ADO不使用CurrentProject.Connection或输入您自己的Connection信息,而是支持将Connection信息存储在称为“数据链接文件”(通常具有* .UDL扩展名)的外部文件中。 数据链接文件提供两个非常重要的功能:
- 它们实现了一个图形界面,用于构造复杂而令人困惑的OLE DB连接字符串。
- 它们提供了一种方法,允许用户编辑连接信息,例如,通过输入自己的用户名和密码,而无需编写代码来捕获此信息。
创建新的数据链接文件的过程非常简单明了:
- 在Windows资源管理器中右键单击,然后选择“新建==>文本文档”。 这样做将在当前文件夹中创建一个新文本文档(* .TXT)。
- 将文件重命名为您喜欢的任何名称,将扩展名更改为.UDL。 Windows将警告您更改文件扩展名可能会使文件不可用; 对这个警告回答“是”。
- 双击文件以编辑数据链接属性。
- 选择提供程序选项卡,然后选择适当的提供程序。
- 选择连接选项卡,然后填写数据库名称和登录信息。
- 单击“测试连接”按钮以验证输入的信息正确,然后单击“确定”以保存文件。
创建数据链接文件后,以* .UDL文件的位置以外的代码打开Connection时无需提供任何信息。 此过程使您无需更改任何代码即可轻松管理变化的数据源。 当您要基于UDL文件打开连接时,只需将* .UDL文件名指定为ConnectionString属性,或者在调用“打开方法”时指定此信息。
出于本技巧的目的,我将创建一个数据链接文件
(SQLServer.udl) ,它将与位于SQL Server本地安装中的Northwind数据库建立连接。 将通过Northwind.udl数据链接文件打开一个连接,将基于“雇员”表创建一个记录集,并且“罗斯文”雇员的名字和姓氏将被打印到立即窗口中。-------------------------------------------------- -------------------------------------------------- -------------------
有关创建数据链接文件的相关信息如下:
- 提供者标签
- 提供程序:用于SQL Server的Microsoft OLE DB
- 连接标签
- 服务器名称:(本地)
- 选择特定的用户名和密码登录选项
- 用户名:sa
- 密码:无
- 选择服务器上的数据库:Northwind
Dim cnnSQL As ADODB.Connection
Dim rstEmployees As New ADODB.Recordset
Set cnnSQL = New ADODB.Connection
cnnSQL.Open "File Name=" & "C:\Test\SQLServer.udl"
Debug.Print cnnSQL.ConnectionString
rstEmployees.Open "Employees", cnnSQL, adOpenKeyset, adLockOptimistic
Do While Not rstEmployees.EOF
Debug.Print rstEmployees![FirstName] & " " & rstEmployees![LastName]
rstEmployees.MoveNext
Loop
rstEmployees.Close
cnnSQL.Close
Set rstEmployees = Nothing
Set cnnSQL = Nothing
-------------------------------------------------- -------------------------------------------------- -------------------
从代码行#7生成的连接字符串:
Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;
Initial Catalog=Northwind;Data Source=(local);Use Procedure for Prepare=1;
Auto Translate=True;Packet Size=4096;Workstation ID=DEZII;
Use Encryption for Data=False;Tag with column collation when possible=False
From: https://bytes.com/topic/access/insights/744230-how-create-data-link-file