建立与数据源的连接

通过 ADO 访问数据源的第一步是创建一个 ADO Connection 对象。这通常使用连接字符串来指定数据源参数,尽管也可以通过将 DSN,用户 ID 和密码传递给 .Open 方法来打开 DSN 连接。

请注意,DSN 不需要通过 ADO 连接到数据源 - 任何具有 ODBC 提供程序的数据源都可以使用适当的连接字符串进行连接。虽然不同提供商的特定连接字符串超出了本主题的范围,但 ConnectionStrings.com 是查找提供商的相应字符串的绝佳参考。

Const SomeDSN As String = "DSN=SomeDSN;Uid=UserName;Pwd=MyPassword;"

Public Sub Example()
    Dim database As ADODB.Connection
    Set database = OpenDatabaseConnection(SomeDSN)
    If Not database Is Nothing Then
        '... Do work.
        database.Close          'Make sure to close all database connections.
    End If
End Sub

Public Function OpenDatabaseConnection(ConnString As String) As ADODB.Connection
    On Error GoTo Handler
    Dim database As ADODB.Connection
    Set database = New ADODB.Connection
    
    With database
        .ConnectionString = ConnString
        .ConnectionTimeout = 10             'Value is given in seconds.
        .Open
    End With
     
    OpenDatabaseConnection = database
     
    Exit Function
Handler:
    Debug.Print "Database connection failed. Check your connection string."
End Function

请注意,仅为了清楚起见,数据库密码包含在上面示例中的连接字符串中。最佳实践将规定不在代码中存储数据库密码。这可以通过用户输入或使用 Windows 身份验证获取密码来完成。