Microsoft OLE DB Provider for SQL Server

目录

The Microsoft® OLE DB Provider for SQL Server (SQLOLEDB) 允许 ADO 访问 Microsoft® SQL Server™。

连接字符串参数

要连接到该提供者,请将 ConnectionString 属性的 Provider 参数设置为:

SQLOLEDB

也可以使用 Provider 属性设置或读取该值。

除了 ADO 定义的连接参数外,提供者支持几个特定提供者的连接参数。与 ADO 连接属性一样,这些特定提供者的属性可以通过 Connection Properties 集合设置或者设置为 ConnectionString 的一部分。

参数 说明
Trusted Connection 用户身份验证模式。可以设置为 TrueFalse。默认值是 False。如果将属性设置为 True,则 SQLOLEDB 将使用 Microsoft® Windows NT® 身份验证模式授权用户访问由 LocationDatasource 属性值指定的 SQL 服务器数据库。如果将该属性设置为 False,则 SQLOLEDB 将使用“混合模式”授权用户访问 SQL 服务器数据库。SQL 服务器的登录和密码在 User IdPassword 属性中指定。
Current Language SQL 服务器语言名称。识别系统信息选择和格式化所使用的语言。该语言必须安装在 SQL 服务器上,否则打开连接时会失败。
Network Address Location 属性指定的 SQL 服务器的网络地址。
Network Library 用来与 SQL 服务器进行通讯的网络库 (DLL) 名。名称不应包括路径或 .dll 文件名的扩展名。默认名由 SQL 服务器客户配置来提供。
Use Procedure for Prepare SQL 服务器存储过程使用。准备命令时定义 SQL 服务器临时存储过程的使用。
Auto Translate OEM/ANSI 字符转换。该属性可设置为 TrueFalse。默认值是 True。如果将该属性设置为 True,则从 SQL 服务器提取多字节字符串或将其发送到 SQL 服务器时,SQLOLEDB 将执行 OEM/ANSI 字符转换。如果将该属性设置为 False,则 SQLOLEDB 不在多字节字符串数据上执行 OEM/ANSI 字符转换。
Packet Size 以字节表示的网络包的大小。包大小的属性值必须在 512 和 32767 之间。默认的 SQLOLEDB 网络包大小是 4096。
Application Name 客户应用程序名。
Workstation ID 标识工作站的字符串。

Command 对象的用法

SQLOLEDB 将 ODBC、ANSI 和特定 SQL 服务器的 Transact-SQL 的混合体作为有效的语法。例如,以下的 SQL 语句使用 ODBC SQL Esc 转义序列来指定 LCASE 字符串函数:

SELECT customerid={fn LCASE(CustomerID)} FROM Customers
  

LCASE 返回字符串,将所有大写字符转换成相应的小写字符。ANSI SQL 的字符串函数 LOWER 执行相同的操作,因此,以下的 SQL 语句与上述 ODBC 语句的 ANSI 等价:

SELECT customerid=LOWER(CustomerID) FROM Customers
  

当被指定为命令的文本时,SQLOLEDB 将成功地处理任何一种语句的窗体。

存储过程

当使用 SQLOLEDB 命令执行 SQL 服务器的存储过程时,请使用命令文本的 ODBC 过程调用 Esc 转义序列。而后,SQLOLEDB 将使用 SQL 服务器的远程过程调用机制来优化命令处理。例如,以下的 ODBC SQL 语句是 Transact-SQL 窗体上的首选命令文本:

ODBC SQL

{call SalesByCategory('Produce', '1995')}
  

Transact-SQL

EXECUTE SalesByCategory 'Produce', '1995'
 

Recordset 行为

SQLOLEDB 不能使用 SQL 服务器游标支持由许多命令生成的多行集合结果。如果客户请求需要 SQL 服务器游标支持的记录集,则所使用的命令文本在其结果中生成多个记录集时将产生错误。

SQL 服务器游标支持可滚动的 SQLOLEDB 记录集。SQL 服务器限制对其他数据库用户所做的更改敏感的游标。特别是一些游标中的行不能排序,试图使用包含 SQL ORDER BY 子句的命令创建行集合会造成失败。

参阅   有关 Microsoft SQL Server OLE DB Provider 的特定执行的详细资料和功能信息,请查阅 Data Access SDK 中的 Microsoft SQL Server OLE DB Provider 文档。

www.51windows.Net