日期:2014-05-19  浏览次数:20786 次

这语句怎么SQL中能执行,在ACCESS中怎么执行不了啊
我的目的是将一ACCESS库中的一张表导出到另外一个数据库的另外一张表中,SQL语句在查询分析器中能执行,但是在程序中这SQL就不行,我在ACCESS数据查询分析器中执行这语句,提示有错误,是不是ACCESS中不支持这样的语句啊。

insert   into   OpenDataSource( 'Microsoft.Jet.OLEDB.4.0 ', 'Data   Source=D:\mrdata.mdb;user   id=admin;password= ')...FM_MarRegister(MR_M_NAME,MR_M_CERTNO,MR_F_NAME,MR_F_CERTNO,MR_MARCHARNO,YM)   select   MR_M_NAME,MR_M_CERTNO,MR_F_NAME,MR_F_CERTNO,MR_MARCHARNO,right(mr_marcharno,5)   from   OpenDataSource( 'Microsoft.Jet.OLEDB.4.0 ', 'Data   Source=   D:\system\Hy.mdb;user   id=admin;password= ')...FM_MarRegister



------解决方案--------------------
Access不支持OpenDataSource函数。

------解决方案--------------------
可以使用如下两种方式访问另一个MDB:

1、
SELECT * from 表名 in 'C:\db2.mdb '

--其中表名是在db2中的表名

2、
select * from [;database=C:\db2.mdb].表名


追加到另一个MDB:

insert into 目标MDB的表名(字段列表) in 'C:\db2.mdb ' select 字段列表 from 当前MDB的表名



insert into [;database=C:\db2.mdb].目标MDB的表名(字段列表) select 字段列表 from 当前MDB的表名