日期:2014-05-16  浏览次数:20925 次

数据库数据批量增加问题
我有一个论坛,使用的是ACCESS数据库,因为数据库出错的原因,数据表中有些数据丢失。其中有一个表User,字段如下:
UserID   ,UserName,   Address,   Password,....
这个表中只有部分数据,而我备份的数据是很全的,我现在想把备份的数据中比现有的数据多的数据导入到里面,请问我该怎么写SQL语句呢?

------解决方案--------------------
insert into old
select b.* from old a right join new b on a.[UserName]=b.[UserName] where isnull(a.[UserName])
------解决方案--------------------
用left join或right join,或者用 in ,但in效率不高。


可以使用如下两种方式访问另一个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的表名