无法打开 ADODB 记录集(使用密码)

Unable to open ADODB recordset (with password)

我有以下代码来打开到另一个 Access 数据库的连接,然后打开一个记录集

Sub OpenTest()
Dim Acon As New ADODB.Connection
Dim rst As ADODB.Recordset

 With Acon
    .Provider = "Microsoft.ACE.OLEDB.12.0"
    .ConnectionString = "C:\MyFolder\MyDb.accdb"
    .Properties("Jet OLEDB:Database Password") = "OpenSesame"
    .Open
 End With

 Set rst = New ADODB.Recordset
 rst.Open "SELECT * FROM tblAdmin", Acon, adOpenDynamic, adLockReadOnly

 If rst.EOF = False Or rst.BOF = False Then
    rst.MoveFirst
    Debug.Print rst!UserID
 End If

 Set rst = Nothing
 Acon.Close
End Sub

连接本身可以正常打开,但奇怪的是记录集无法打开,我收到 运行 时间错误说

Not a valid password

密码肯定是正确的(连接打开就是证据)。在数据库上设置密码时,我确保选择了旧版加密选项以实现兼容性。我也用这段代码打开了一个不同的数据库,它工作正常。

有人知道为什么它可能不起作用吗?

对于任何有兴趣的人。我发现了问题。只是因为我试图在记录集中使用的 table 实际上是一个链接 table。我将文件路径更改为后端路径,现在可以正常工作了。

ヾ(`ヘ´)ノ゙