关于合并两个ACCESS(*.MDB)数据库的问题(100分)

G

glede

Unregistered / Unconfirmed
GUEST, unregistred user!
用DELPHI操作ACCESS数据库,将数据库一个数据库中的表 DTATINFO 中的记录
导入另一个数据库中的表 DTATINFO 中,
我的代码如下:
sqlstr:='insert into [%s].DATAINFO select * from [%s].DATAINFO';
ADOQuery1.Close;
ADOQuery1.SQL.Text:=Format(sqlstr,[MDBDest,MDBSource]);
ADOQuery1.ExecSQL;
运行时,错误如下:
parameter 被不正确的定义。提供了不一致或不完整的信息。

请教各位,这是什么问题?



 
insert into DATAINFO in "%s" select * from DATAINFO
adoquery对应的TADOConnection连接当前数据库,为源数据库
 
ysai兄的方法OK,
在这个表中唯一关键字是USERID,USERID在目标表中有的则不导,
where语句怎么写,请指教。
 
insert into DATAINFO in "%s" select * from DATAINFO where USERID not in (
select USERID from DATAINFO in "%s");
试试,不知道成不成,我没导过,如果USERID是自增字段,绝对不行
 
USERID是不是自增字段,但我试过不行,
报“语法错误(操作符丢失)在查询表达式‘……’中”
请大侠继续支持。
 
我在ACCESS2000中的查询中用下面的语句实现了功能,用户名是字符串型主键
insert into temp in "e:/maindb.mdb"
select * from _用户信息 where 用户名 not in (
SELECT 用户名 from _用户信息 in "e:/maindb.mdb");
不知道你的为什么不行,可以先在ACCESS的查询中试试,再写到DELPHI中
 
谢了:)
 
接受答案了.
 
顶部