使用连接对象

在打开 Connection 对象之前,你必须定义有关数据源和连接类型的某些信息。 大部分信息由 Connection 对象的 Open 方法的 ConnectionString 参数保存,或者由 Connection 对象的 ConnectionString 属性保存。 连接字符串由以分号分隔的参数/值对列表组成,值用单引号括起来。 例如:

Dim sConn As String  
sConn = "Provider='SQLOLEDB';Data Source='MySqlServer';" & _  
             "Initial Catalog='Northwind';Integrated Security='SSPI';"  

注意

你还可以在连接字符串中指定 ODBC 数据源名称 (DSN) 或数据链接 (UDL) 文件。 有关 DSN 的详细信息,请参阅 ODBC 程序员参考中的管理数据源。 有关 UDL 的详细信息,请参阅 OLE DB 程序员参考中的数据链接 API 概述

通常,你通过调用 Connection.Open 方法来建立连接,并将适当的连接字符串作为其参数。 下面的 Visual Basic 代码片段显示了一个示例:

Dim oConn As ADODB.Connection  
Dim oRs As ADODB.Recordset  
Dim sConn As String  
Dim sSQL as String  
  
' Open a connection.  
Set oConn = New ADODB.Connection  
.Open   
  
' Make a query over the connection.  
sSQL = "SELECT ProductID, ProductName, CategoryID, UnitPrice " & _  
             "FROM Products"  
Set oRs = New ADODB.Recordset  
oRs.Open sSQL, , adOpenStatic, adLockBatchOptimistic, adCmdText  
  
MsgBox oRs.RecordCount  
  
' Close the connection.  
oConn.Close  
Set oConn = Nothing  
  

此处 oRs.Open 将 Connection 对象 (oConn) 变量作为其 ActiveConnection 参数的值。 此外,Connection.CursorLocation 属性采用 adUseServer 的默认值。 将此与上一节中的 HelloData 示例进行对比。 以下指令将导致运行时错误。

oRs.MarshalOptions = adMarshalModifiedOnly  
' Disconnect the Recordset.  
Set oRs.ActiveConnection = Nothing