【发布时间】:2013-03-18 12:19:27
【问题描述】:
我正在尝试使用下面的代码使用 VB6 ADO 连接将访问表中的所有记录插入到 sql server 表中
Set cn = New ADODB.connection
cn.CursorLocation = adUseClient
cn.ConnectionString = "Provider=SQLOLEDB.1;Password=password;Persist Security
Info=True;User ID=sa;Initial Catalog=Kargozini;Data Source=DC"
cn.Open
cn.execute("INSERT INTO TLeavePersonel SELECT * FROM OPENDATASOURCE
('Microsoft.Jet.OLEDB.4.0','Data Source=D:\Kargozini\arazz\Arazdb.Mdb;
Jet OLEDB:Database Password=MYPASSWORD;' )... TLeavePersonel Rowset_1")
但是当我运行代码时出现以下错误:
运行时错误“-2147217900 (80040e14)”: [OLE/DB 提供程序返回消息:Microsoft Jet 数据库引擎无法打开文件“D:\Kargozini\arazz\Arazdb.Mdb”。它已被其他用户独占打开,或者您需要权限才能查看其数据。]
【问题讨论】:
-
SQL Server 可以访问路径
D:\Kargozini\arazz\Arazdb.Mdb吗?即使您可能在一台服务器上运行代码,因为您是针对 SQL 服务器执行它,它也会在其自身上寻找“D”驱动器。您可能必须使用 UNC 共享才能访问它。
标签: sql-server ms-access vb6