数据库连接字符串参数的含义

来源:互联网 发布:数控编程g73格式 编辑:程序博客网 时间:2024/05/05 22:58

● ODBC(Open Database Connectivity):在早期,各个数据库的格式均不统一,为了能处理各种各样的数据库,人们就创建了ODBC这样一个通用的API库。但是程序员在开发数据库程序中,仍然感到困难,所以微软公司在DAO、ADO的基础上提出了OLE DB。

● OLE DB:一个基于COM的数据存储对象,能提供对所有类型的数据的操作,甚至能在离线的情况下存取数据。

在前面使用DSN数据源时,每次都需要在ODBC数据管理器当中建立一个数据源,然后Web程序就通过 ODBC层来与数据库进行通信。但是OLE DB消除了Web应用程序和数据库之间的ODBC层,从而提高了连接的速度。由于不同的数据库需要不同的OLE DB驱动程序,所以在使用OLE DB时,需要指定驱动程序。如果没有指定ASP会使用ODBC驱动程序的默认OLE DB提供程序与ODBC驱动程序进行通信,然后再与数据库进行通信。可以在微软的网站上下载Microsoft Data Access Components(简称MDAC)2.8软件包,并将其安装在运行IIS或PWS的Windows计算机上,获取用于Microsoft Access和SQL Server的OLE DB提供程序。而Oracle数据库的OLE DB提供程序需要另外从Oracle Web站点下载,该站点需要读者注册为用户才能下载。    

(注意:由于OLE DB由微软公司提出,所以只有Windows 2000/2003/XP支持。)

对于Access和SQL Server数据库,连接字符串具有如下语法格式。

ODBC:

Driver={ Driver (*.mdb)};DBQ=[DSN]

OLE DB:

Provider=[OLE DB Provider];Server=[ServerName];Database=[DatabaseName];UID=[UserID];PWD=[Password]

其中涉及的参数解析如下:

   ● Provider:该参数指定数据库的OLE DB提供程序。如果没有Provider参数,则将使用ODBC的默认OLE DB提供程序,而且,必须为数据库指定适当的ODBC驱动程序。下面分别是Access、SQL Server和Oracle数据库的常用OLE DB提供程序的参 数:

Provider=Microsoft.Jet.OLEDB.4.0;

Provider=SQLOLEDB;

Provider=OraOLEDB。

   ● Driver:该参数指定在没有为数据库指定OLE DB提供程序时,所使用的ODBC驱动程序。

   ● Server:该参数指定承载SQL Server数据库(Access数据库不存在Server)的服务器,这种情况下,指Web应用程序和数据库服务器,不在同一台服务器上运行。

   ● Database:该参数为SQL Server数据库的名称(同样Access数据库不存在)。

   ● DBQ:该参数为指向基于文件的数据库(如在Access中创建的数据库)的路径。该路径是在承载数据库文件的服务器上的路径。

   ● UID:该参数为连接数据库的用户名。

   ● PWD:该参数为用户密码。

   ● DSN:该参数为数据源名称。这种情况,指已经在服务器上定义的DSN名称。

   ● 对于其他类型的数据库,连接字符串可能不使用上面列出的参数,或者可能对于这些参数,有不同的名称或用途。

下面是一个连接字符串示例,将创建与d盘根目录下名为test.mdb的Access数据库的ODBC连接:

Driver={Microsoft Access Driver (*.mdb)};DBQ=d:/test.mdb

对应OLE DB连接方式的连接字符串如下:

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:/test.mdb;Persist Security Info=False

下面是一个连接字符串示例,它将创建与位于test服务器上名为Mydb的SQL Server数据库的OLE DB连接,其中用户名和密码都是假定:

Provider= SQLOLEDB.1;Server=test;Database=Mydb; User ID =user; Password =password

7.5.1 连接Access

在了解了自定义连接字符串的知识以后,就需要在Dreamweaver中通过其将网页连接上数据库。本小节将以Access为例来进行具体讲解。

(1)在Dreamweaver中打开一个ASP页,然后依次选择【窗口】|【数据库】命令,打开【数据库】面板。

(2)单击该面板上的【添加】按钮,弹出下拉菜单,选择【自定义连接字符串】命令,打开【自定义连接字符串】对话框,如图7.30所示。

(3)在【连接名称】文本框中输入连接名称,如MyConn,再在【连接字符串】文本框中输入自定义连接字符串。假定连接一个c:/input/wwwroot/db目录下的名为bbsdb.mdb的Access库,该库具有密码admin,那么定义连接字符串如下:

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:/input/wwwroot/db/testdb.mdb;Persist Security Info=False; Jet OLEDB:Database Password=admin

注意在这种情况下,连接字符串中必须包含Password参数和值。

上面是以OLE DB方式进行连接的,实现同样功能的ODBC方式连接字符串如下:

Driver={Microsoft Access Driver (*.mdb)};DBQ= c:/input/wwwroot/db/testdb.mdb;PWD=admin

(4)单击【测试】按钮测试数据库连接是否成功,如果弹出如图7.31所示的对话框,则说明连接成功。

               

(5)单击【确定】按钮,完成设置,退回到Dreamweaver编辑界面。这时刚才建立的MyConn连接,会立即出现在【数据库】面板中。

7.5.2 连接SQL Server

连接SQL Server只需要在连接Access数据库的基础上修改一下连接字符串。

(1)在Dreamweaver中打开一个ASP页,然后依次选择【窗口】|【数据库】命令,打开【数据库】面板。

(2)单击该面板上的【添加】按钮,弹出下拉菜单,选择【自定义连接字符串】命令,打开【自定义连接字符串】对话框,如图7.32所示。

 

(3)在【连接名称】文本框中输入连接名称,如MySQLConn。然后在【连接字符串】文本框中输入自定义连接字符串,单击【测试】按钮测试数据库连接是否成功。

假定为本地的SQL Server数据库的用户名和密码都为TestUser,那么连接字符串为:

Provider=SQLOLEDB.1;Password=TestUser;Persist Security Info=True;User ID=TestUser;Data Source=127.0.0.1

(4)单击【确定】按钮,完成设置,退回到Dreamweaver编辑界面。

这时刚才建立的MySQLConn连接会立即出现在【数据库】面板中。

原创粉丝点击