访问 sql 通过查询更改用户
Access sql pass through query change user
我的同事突然去世后,我继承了几个 Access 数据库。这些包含 sql 通过我无法 运行 的查询,因为他们正在寻找他的 odbc 连接与他存储的密码。如何更改与我的连接,以便查询 运行?
在查询属性 window 中,应该有一个名为 "ODBC Connect Str" 的字段。该值将如下所示:
ODBC;DSN=DatabaseName;UID=HisUserID;PWD=HisPassword;maybeOtherStuffHere
只需将 UID 和 PWD 值更改为您的值即可。您必须为每个查询执行此操作。
为此类事情拥有一个服务帐户也是一个好主意,这样您就不会 运行 在有人离开或无法联系时遇到问题。
Public Sub FixOwner()
Dim oTable As TableDef
For Each oTable In CurrentDb.TableDefs
If oTable.Connect <> "" And InStr(oTable.Connect, "hisUserID") > 0 Then
oTable.Connect = Replace(oTable.Connect, "HisUserID", "YourUserID")
oTable.Connect = Replace(oTable.Connect, "HisPassword", "YourPassword")
End If
Next
Dim oQuery As QueryDef
For Each oQuery In CurrentDb.QueryDefs
If oQuery.Connect <> "" And InStr(oQuery.Connect, "hisUserID") > 0 Then
oQuery.Connect = Replace(oQuery.Connect, "HisUserID", "YourUserID")
oQuery.Connect = Replace(oQuery.Connect, "HisPassword", "YourPassword")
End If
Next
End Sub
我的同事突然去世后,我继承了几个 Access 数据库。这些包含 sql 通过我无法 运行 的查询,因为他们正在寻找他的 odbc 连接与他存储的密码。如何更改与我的连接,以便查询 运行?
在查询属性 window 中,应该有一个名为 "ODBC Connect Str" 的字段。该值将如下所示:
ODBC;DSN=DatabaseName;UID=HisUserID;PWD=HisPassword;maybeOtherStuffHere
只需将 UID 和 PWD 值更改为您的值即可。您必须为每个查询执行此操作。
为此类事情拥有一个服务帐户也是一个好主意,这样您就不会 运行 在有人离开或无法联系时遇到问题。
Public Sub FixOwner()
Dim oTable As TableDef
For Each oTable In CurrentDb.TableDefs
If oTable.Connect <> "" And InStr(oTable.Connect, "hisUserID") > 0 Then
oTable.Connect = Replace(oTable.Connect, "HisUserID", "YourUserID")
oTable.Connect = Replace(oTable.Connect, "HisPassword", "YourPassword")
End If
Next
Dim oQuery As QueryDef
For Each oQuery In CurrentDb.QueryDefs
If oQuery.Connect <> "" And InStr(oQuery.Connect, "hisUserID") > 0 Then
oQuery.Connect = Replace(oQuery.Connect, "HisUserID", "YourUserID")
oQuery.Connect = Replace(oQuery.Connect, "HisPassword", "YourPassword")
End If
Next
End Sub