Access VBA获取链接表连接字符串丢失分号触发3305错误
Access VBA链接表连接字符串异常问题
今早发现,在VBA中从SQL Server链接表获取连接字符串时,字符串开头为ODBCDRIVER=而非正确的ODBC;DRIVER=。将该字符串用于QueryDef时,触发错误3305:传递查询中的连接字符串无效。此前该函数返回的连接字符串正常,且未修改相关代码。
以下是获取连接字符串的函数及db函数:
Public Function GetObjectConnectString(ObjectName As String, ObjectType As String) As String GetObjectConnectString = vbNullString Dim ConnectString As String Select Case ObjectType Case "Table" ConnectString = db.TableDefs(ObjectName).Connect Case "Query" ConnectString = db.QueryDefs(ObjectName).Connect End Select GetObjectConnectString = ConnectString End Function
Private my_db As DAO.Database Public Function db() As DAO.Database Set db = my_db ErrEx.Catch 91, 3420 'no longer set Set my_db = CurrentDb Resume End Function
已尝试重装Office,但问题依旧。请问这是预期行为吗?是否需要手动添加分号来处理?
使用环境:
- Microsoft Access for Microsoft 365 MSO(版本2312 内部版本16.0.17126.20078)64位
- Microsoft Visual Basic for Applications 7.1 版本1131
内容的提问来源于stack exchange,提问作者Brenda
相关产品推荐
相关产品推荐

