ActiveX 数据对象 (ADO) 是一种既易于使用又可扩充的技术,用来将数据库访问添加到您的 Web 页可以使用 ADO 编写简洁和可升级的脚本以连接到与 OLE DB 兼容的数据源,如数据库、电子表格、顺序数据文件或电子邮件目录。OLE DB 是一个系统级的编程接口,它提供一套标准的 COM 接口,用来展示数据库管理系统的功能。使用 ADO 的对象模型,您可以轻松地(使用 VBScript 或 JScript 等脚本语言)访问这些接口并将数据库功能添加到您的 Web 应用程序中。另外,您还可以使用 ADO 访问与开放式数据库互连 (ODBC) 兼容的数据库。
关于 ADO 的详细信息,请访问 Microsoft 通用数据访问 (UDA) Web 站点 http://www.microsoft.com/data/。
创建连接字符串
创建 Web 应用程序的第一步是给 ADO 提供一种定位并识别数据源的方法。这是通过“连接字符串”来完成的,连接字符串是一系列用分号分隔的参数,用来定义诸如数据源提供者和数据源位置等参数。ADO 使用连接字符串来识别 OLE DB “提供者”并将提供者指向数据源。提供者是一个组件,用来描述数据源并以行集合的形式将信息展示给应用程序。
下表列出了几个通用数据源的 OLE DB 连接字符串:数据源 OLE DB 连接字符串
Microsoft Access Provider=Microsoft.Jet.OLEDB.4.0;Source=指向 .mdb 文件的物理路径
Microsoft SQL Server Provider=SQLOLEDB.1;Source=指向服务器上数据库的路径
Oracle Provider=MSDAORA.1;Source=指向服务器上数据库的路径
Microsoft Indexing Service Provider=MSIDXS.1;Source=指向文件的路径
为了提供向后兼容,ODBC 的 OLE DB 提供者支持 ODBC 连接字符串语法。下表列出了通常使用的 ODBC 连接字符串: 数据源驱动程序 ODBC 连接字符串
Microsoft Access Driver={Microsoft Access Driver (*.mdb)};DBQ=指向 .mdb 文件的物理路径
SQL Serverr Driver={SQL Server};SERVER=指向服务器的路径
Oracle Driver={Microsoft ODBC for Oracle};SERVER=指向服务器的路径
Microsoft Excel Driver={Microsoft Excel Driver (*.xls)};DBQ=指向 .xls 文件的物理路径; DriverID =278
Microsoft Excel 97 Driver={Microsoft Excel Driver (*.xls)};DBQ=指向 .xls 文件的物理路径;DriverID=790
文本 Driver={Microsoft Text Driver (*.txt;*.csv)}; DefaultDir=指向 .txt 文件的物理路径
Microsoft Visual FoxPro®(带有一个数据库容器) Driver={Microsoft Visual FoxPro Driver};SourceType=DBC;SourceDb=指向 .dbc 文件的物理路径
Microsoft Visual FoxPro(不带数据库容器) Driver={Microsoft Visual FoxPro Driver};SourceType=DBF;SourceDb=指向 .dbf 文件的物理路径
注意 (使用 UNC 路径引用位于远程计算机上的数据源的)连接字符串可能造成潜在的安全问题。要禁止对您的数据源进行未授权访问,可为需要访问数据的计算机创建 Windows 帐号,然后对数据源应用适当的 NTFS 权限。详细信息,请参阅使用 NTFS 保护文件。
设计 Web 数据应用程序时应考虑的高级问题
由于性能和可靠性的原因,我们强烈推荐,在配置数据驱动 Web 应用程序(需要能满足大约 10 个以上并发用户同时进行高要求的访问)时,使用客户端服务器数据库引擎。虽然 ADO 适用于与 OLE DB 兼容的任何数据源,但经过广泛的测试,主要设计为与客户端服务器数据库(如 Microsoft SQL Server 或 Oracle)一起工作。
ASP 支持共享文件数据库(Microsoft Access 或 Microsoft FoxPro)作为有效的数据源。虽然在 ASP 文档中有些示例使用了“共享文件”数据库,但我们还是建议这些类型的数据库引擎只用于开发目的或有限的开发方案中。共享文件数据库可能不如客户端服务器数据库更适合于高要求和高质量的 Web 应用程序。
如果正在开发 ASP 数据库应用程序,并且该程序将连接到远程 SQL Server 数据库,您还应该注意以下几点:
选择 SQL Server 连接方案 要访问远程 SQL Server 数据库,可以选择 TCP/IP 套接字方法或已命名管道方法。使用已命名管道,必须在建立连接之前由 Windows 对数据库客户加以验证,以防止运行已命名管道的远程计算机拒绝那些在该计算机上具有适当 SQL Server 访问证书、但没有 Windows 用户帐号的用户的访问。作为另一个选择,使用 TCP/IP 套接字的连接将直接连到数据库服务器,而不通过中间计算机进行连接。如果通过中间计算机,则与使用已命名管道类似。而且由于使用 TCP/IP 套接字的连接会直接连到数据库服务器,所以用户可以通过 SQL Server 验证而不是 Windows 验证来获得