SELECT * FROM opendatasource( 'Microsoft.Jet.OLEDB.4.0', 'Data Source="c:\test.mdb";Jet OLEDB:Database Password=数据库密码')...[表名]/*--说明: c:\test.mdb 是你要操作的ACCESS数据库名,如果不在SQL服务器上,需要设置文件所在的目录为完全共享,并将目录改为网络目录 表名 是你要操作和ACCESS数据库中的表名 数据库密码 如果你的ACCESS数据库有密码,就要用第二种方式 其他部分不需要做任何变动如果是导入数据到现有表,对应的在: SELECT * 前加上: INSERT INTO 表 语句如果是导入数据并生成新表,对应的在: SELECT * 后加上: INTO 表 语句 --*/
注意,不能用into opendatasource建表
Insert into OpenDataSource(... )... 是可以的啊,为什么Select * into OpenDataSource(... )...不可以呢??那邹大哥有没有好的解决方法啊,我的问题是想把SQL SERVER 上的一个表的某些字段复制到一个Access库中,并新建一个表,而且这个库有密码,我该怎么办??
Select * into 表B from 表A --- 将表A内容完全复制到新表B中(不需要手工建立) 你的语法不对~
语法我是知道的,但是表B是一个Access表,而且有密码,我该怎么在查询分析器里完成这样的工作呢?
select * into newtable from ( SELECT * FROM opendatasource( 'Microsoft.Jet.OLEDB.4.0', 'Data Source="c:\test.mdb";User ID=Admin;Password=数据库密码')...[表名] ) b
不就行了吗
FROM opendatasource( 'Microsoft.Jet.OLEDB.4.0',
'Data Source="c:\test.mdb";Jet OLEDB:Database Password=数据库密码')...[表名]/*--说明:
c:\test.mdb 是你要操作的ACCESS数据库名,如果不在SQL服务器上,需要设置文件所在的目录为完全共享,并将目录改为网络目录
表名 是你要操作和ACCESS数据库中的表名
数据库密码 如果你的ACCESS数据库有密码,就要用第二种方式
其他部分不需要做任何变动如果是导入数据到现有表,对应的在: SELECT *
前加上: INSERT INTO 表
语句如果是导入数据并生成新表,对应的在: SELECT *
后加上: INTO 表
语句
--*/
---
将表A内容完全复制到新表B中(不需要手工建立)
你的语法不对~
(
SELECT * FROM opendatasource( 'Microsoft.Jet.OLEDB.4.0',
'Data Source="c:\test.mdb";User ID=Admin;Password=数据库密码')...[表名]
) b
我已经调试过