【发布时间】:2015-07-15 22:31:03
【问题描述】:
我在 Access 前端应用程序中创建了一个表,并尝试使用以下子例程将其连接到后端数据库:
Sub createFlowTable()
Dim db As Database
Dim tblDef As TableDef
Set db = CurrentDb
Set tblDef = db.CreateTableDef("myTable")
tblDef.Connect = "ODBC;DRIVER=SQL Server;SERVER=myServer; Trusted_Connection=No;UID=<myUID>;PWD=<myPWD>;APP=2007 Microsoft Office system;DATABASE=myDataBase;Network=DBMSSOCN;TABLE=dbo.myTable"
tblDef.SourceTableName = "mySourceTableName"
db.TableDefs.Append tblDef
End Sub
关闭前端 Access 数据库后,重新打开后,表无法打开。即使我在字符串中将 Trusted_Connection 设置为“否”,该表仍会尝试使用 Windows 身份验证。另外,当我在设计视图中打开表格时,我会在“描述”前面看到:
ODBC;DRIVER=SQL Server;Server=myServer;APP=2007 Microsoft Office System;DATABASE=myDatabase;Network=DBMSSOCN;Table=dbo.myTable
显然Access没有保存UID和PWD,也没有保存设置Trusted_Connection为“No”的指令。
我坚持使用连接字符串来完成此操作,并且使用 DSN 不适用于我的应用程序。非常感谢您的帮助。
【问题讨论】:
标签: sql-server ms-access vba odbc ms-access-2007