VBA 与数据源建立连接
示例
通过ADO访问数据源的第一步是创建一个ADOConnection对象。尽管也可以通过将DSN,用户ID和密码传递给.Open方法来打开DSN连接,但是通常使用连接字符串指定数据源参数来完成此操作。
请注意,通过ADO连接到数据源不需要DSN-可以使用适当的连接字符串将具有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身份验证获取密码来完成。