我尝试使用下面的代码使用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'。它已由其他用户专门打开,或者您需要获得查看其数据的权限。]
答案 0 :(得分:0)
您似乎正在使用MS Access,因此您可以在查询中引用SQL Server连接:
INSERT INTO
[ODBC;DRIVER=SQL Server;SERVER=server;Trusted_Connection=Yes;DATABASE=Kargozini;].TLeavePersonel
SELECT * FROM TLeavePersonel;
您可以在此处找到合适的ODBC连接字符串:http://www.connectionstrings.com/