如何将SQL SERVER 2005中某个表中的某些数据导入到一个空的ACCESS数据库中

时间:2022-05-01 06:34:25
如题,我用Insert Into OpenDataSource的方式将SQL SERVER2005中的某个表(如表A)的数据导出到一个空的ACCESS数据库中(该数据库中不存在表A),结果总提示ACCESS数据库中不存在表A,当时用Insert Into方法将ACCESS数据导入到另一空ACCESS数据库中,都能实现如果数据库中不存在需要导入的数据表,则会自动创建。但是为什么SQL SERVER不可以呢,还是我没用对方法,谢谢指教!

14 个解决方案

#1


insert into OPENROWSET('Microsoft.Jet.OLEDB.4.0', 'C:\database.mdb'; 'admin';'',tt) 
select *from ta

#2


还是发生错误

消息 7314,级别 16,状态 1,第 1 行
链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.Jet.OLEDB.4.0" 不包含表 "tt"。该表不存在,或者当前用户没有访问该表的权限。

#3


tt 要改你的表呀

#4


引用 2 楼 linton 的回复:
还是发生错误

 消息 7314,级别 16,状态 1,第 1 行
 链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.Jet.OLEDB.4.0" 不包含表 "tt"。该表不存在,或者当前用户没有访问该表的权限。

照着1楼写的改成你的表名

#5


晕,表不存在,
那改成select into 

#6


select into怎么写?

#7


我的条件是ACCESS中不存在tt表的情况下,导出数据到ACCESS中,并自动创建tt表

#8


aa

#9


补充下
select * into OPENROWSET('Microsoft.Jet.OLEDB.4.0', 'C:\database.mdb'; 'admin';'',tt)
from a

#10


Select * Into OPENROWSET('Microsoft.Jet.OLEDB.4.0', 'C:\database.mdb'; 'admin';'',XMDATA) From XMDATA

还是发生错误:

消息 156,级别 15,状态 1,第 1 行
关键字 'OPENROWSET' 附近有语法错误。

#11


表名不存在时直接bcp吧

master..xp_cmdshell'bcp "serv.dbo.ta" in  "c:\db1.mdb" -c -q -S"." -U"sa" -P""'

#12


或是SSIS也可以搞定

#13


引用 11 楼 happyflystone 的回复:
表名不存在时直接bcp吧

master..xp_cmdshell'bcp "serv.dbo.ta" in  "c:\db1.mdb" -c -q -S"." -U"sa" -P""'


不好意思 方向反了

master..xp_cmdshell'bcp "serv.dbo.ta" out  "c:\db1.mdb" -c -q -S"." -U"sa" -P""'

#14


看不懂,先查查帮助

#1


insert into OPENROWSET('Microsoft.Jet.OLEDB.4.0', 'C:\database.mdb'; 'admin';'',tt) 
select *from ta

#2


还是发生错误

消息 7314,级别 16,状态 1,第 1 行
链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.Jet.OLEDB.4.0" 不包含表 "tt"。该表不存在,或者当前用户没有访问该表的权限。

#3


tt 要改你的表呀

#4


引用 2 楼 linton 的回复:
还是发生错误

 消息 7314,级别 16,状态 1,第 1 行
 链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.Jet.OLEDB.4.0" 不包含表 "tt"。该表不存在,或者当前用户没有访问该表的权限。

照着1楼写的改成你的表名

#5


晕,表不存在,
那改成select into 

#6


select into怎么写?

#7


我的条件是ACCESS中不存在tt表的情况下,导出数据到ACCESS中,并自动创建tt表

#8


aa

#9


补充下
select * into OPENROWSET('Microsoft.Jet.OLEDB.4.0', 'C:\database.mdb'; 'admin';'',tt)
from a

#10


Select * Into OPENROWSET('Microsoft.Jet.OLEDB.4.0', 'C:\database.mdb'; 'admin';'',XMDATA) From XMDATA

还是发生错误:

消息 156,级别 15,状态 1,第 1 行
关键字 'OPENROWSET' 附近有语法错误。

#11


表名不存在时直接bcp吧

master..xp_cmdshell'bcp "serv.dbo.ta" in  "c:\db1.mdb" -c -q -S"." -U"sa" -P""'

#12


或是SSIS也可以搞定

#13


引用 11 楼 happyflystone 的回复:
表名不存在时直接bcp吧

master..xp_cmdshell'bcp "serv.dbo.ta" in  "c:\db1.mdb" -c -q -S"." -U"sa" -P""'


不好意思 方向反了

master..xp_cmdshell'bcp "serv.dbo.ta" out  "c:\db1.mdb" -c -q -S"." -U"sa" -P""'

#14


看不懂,先查查帮助