数据库连接技术对比

数据库连接技术对比,第1张

一、ASP与Access数据库连接

<%

dim conn,mdbfile

mdbfile=servermappath("数据库名称mdb")

set conn=servercreateobject("adodbconnection")

connopen "driver={microsoft access driver (mdb)};uid=admin;pwd=数据库密码;dbq="&mdbfile

<%

Set conn = ServerCreateObject("ADODBConnection")

connOpen "Provider=MicrosoftJetOLEDB40;Data Source=" & ServerMapPath("xxxmdb")

%>

%>

二、ASP与SQL数据库连接:

<%@ language=VBscript%>

<%

dim conn

set conn=servercreateobject("ADODBconnection")

conopen "PROVIDER=SQLOLEDB;DATA SOURCE=SQL服务器名称或IP地址;UID=sa;PWD=数据库密码;DATABASE=数据库名称

%>

建立记录集对象:

set rs=servercreateobject("adodbrecordset")

rsopen SQL语句,conn,3,2

msql数据库连接:

一、传统方法:

1、本人使用JDBC驱动mysql-connector-java-516-binjar,将此驱动包放到%Tomcat_Home%\common\lib\下,

2、在应用程序中加载此包,右键项目属性->java build path->libraries->external libraries

3、在应用程序中加载驱动,ClassforName("commysqljdbcDriver")newInstance()

4、 用javasqlDriverManager类取得一连conn=DriverManagergetConnection(url);

5、用javasqlStatement接口创建stmt 对象,stmt=conncreateStatement();

或javasqlPreraredStatement接口 pstmt;

6、 用javasqlResultSet接口创建rst对象,rst = stmtexecuteQuery(sql语句);

7、 处理结果集,断开数据库连接。

二、数据池连接技术

1、 将mysql-connector-java-516-binjar,也在%Tomcat_Home%\common\lib\下,

2、 在tomcat中manager中配置数据源名,配置完后内容自动放在conf\serverxml中。

3、 在conf\catalina\localhost\下建你应用程序的xml文件,例wei2xml中,内容为<Context docBase="wei2" path="/wei2">

<ResourceLink global="jdbc/mysql" name="jdbc/mysql" type="javaxsqlDataSource"/>

</Context>

其中jdbc/mysql为配置的JNDI;

下面说下JNDI与DataSource

JNDI java naming directory interface命名和目录接口命名服务来使组件定位到其它组件和资源(数据库资源),JNDI所有名应该以字符串java:comp/env开始;

要定位JDBC资源中,这时就可以编写代码使用JNDI的lookup()方法来定位到这个资源了。

JNDI命名服务有一组将名称与对象联系在一起的绑定。JNDI中的lookup()方法传递一个JNDI参数(java:comp/env/myjdbc,前面java:comp/env是必要的。),返回相应的对象(返回类型为DataSource,若为数据库,则可用DataSource中的getConnection()方法获取数据库连接)

DataSoure 是javaxsqlDataSource类型。

数据库连接池分三步:

1、 指定数据库连接的逻辑名,起名java:comp/env/myjdbc

2、 获取与逻辑名相当的DataSource对象,代码为:

InitialContext ctx = new InitialContext();

DataSource ds = (DataSource)ctxlookup(“java:comp/env/myjdbc”);

3、 由DataSource对象获取Connection对象

Connection con=dsgetConnection();

综上所有步骤:

Connection con;

Private void init(){

Try{

InitialContext ctx = new InitialContext();

DataSource ds = (DataSource)ctxlookup(“java:comp/env/jdbc/mysql”);

Conn = dsgetConnection();

}

Catch(Exception e){

eprintStackTrace();

}

}

这段代码使用连接池技术返回一个Connection对象

贴个文章给你吧

数据库连接是一种关键的有限的昂贵的资源,这一点在多用户的网页应用程序中体现得尤为突出。对数据库连接的管理能显著影响到整个应用程序的伸缩性和健壮性,影响到程序的性能指标。数据库连接池正是针对这个问题提出来的。

数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而再不是重新建立一个;释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏。这项技术能明显提高对数据库 *** 作的性能。

数据库连接池在初始化时将创建一定数量的数据库连接放到连接池中,这些数据库连接的数量是由最小数据库连接数来设定的。无论这些数据库连接是否被使用,连接池都将一直保证至少拥有这么多的连接数量。连接池的最大数据库连接数量限定了这个连接池能占有的最大连接数,当应用程序向连接池请求的连接数超过最大连接数量时,这些请求将被加入到等待队列中。数据库连接池的最小连接数和最大连接数的设置要考虑到下列几个因素:

1) 最小连接数是连接池一直保持的数据库连接,所以如果应用程序对数据库连接的使用量不大,将会有大量的数据库连接资源被浪费;

2) 最大连接数是连接池能申请的最大连接数,如果数据库连接请求超过此数,后面的数据库连接请求将被加入到等待队列中,这会影响之后的数据库 *** 作。

3) 如果最小连接数与最大连接数相差太大,那么最先的连接请求将会获利,之后超过最小连接数量的连接请求等价于建立一个新的数据库连接。不过,这些大于最小连接数的数据库连接在使用完不会马上被释放,它将被放到连接池中等待重复使用或是空闲超时后被释放。

要么用数据库的C API接口,要么用数据库的嵌入C扩充语言! 具体怎么写法,根据数据库不同而不同!!!

我知道的Visual C++的几种访问数据库,就有:

ODBC(Open DataBase Connectivity)

MFC ODBC(Microsoft Foundation Classes ODBC)

DAO (Data Access Object)

OLE DB(Object Link and Embedding DataBase)

ADO(ActiveX Data Object)

对不同的数据库有些区别的呀

Access 和Server2000就大致一样,而Oracle有点不同(其实大概也差不了多少)

具体的问题还要具体的问好

C++连接数据库有一个比较好的方法,使用OTL类库。

它已经封装了平常大多数关系数据库的连接 *** 纵方式,如Oracle,MySQL,DB2,MS SQL等

官网:>

以上就是关于数据库连接技术对比全部的内容,包括:数据库连接技术对比、如何建立com组件连接mysql、请解释数据库连接池的原理,以及作用等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9348681.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存