快速问题数据库专家.请参阅从Excel调用的以下代码(VBA/ADO):
Dim DBPath As String, ConnStr As String DBPath = ThisWorkbook.Path & Application.PathSeparator & "Database.mdb" ConnStr = "Data Source=" & DBPath & ";" & "Jet OLEDB:Database Password=" & DBPass() Dim cnn as ADODB.Connection Set cnn = New ADODB.Connection With cnn .Provider = CheckProvider(strPath:=DBPath) ' Separate function call. Ignore .Mode = adModeRead .Open ConnStr End With Stop ' To inspect the directory...
在给定"adModeRead"规范的情况下,它应该以只读方式打开数据库.但是我注意到,当连接处于活动状态时,仍在目录中创建/删除锁定文件(Database.ldb).当然这与只读命令相反,后者应该意味着不能写入任何数据,因此不需要文件锁定.
谁能解释一下这里发生了什么?谢谢.
编辑:和后续 - 如果我想打开连接纯粹只读而不创建任何锁定文件,还有其他方法吗?