有两个数据库 DB1 和 DB2
里面都有三个表 表A 表B 表C 表结构都一样。
DB1表数据如下
表A:
ID A1 A2
1 2 3
2 3 4
3 5 6表B:
ID B1 B2 IID
1 2 3 1
2 2 4 1
3 5 6 2
4 7 8 3表C:
ID C1 C2 IID
1 2 3 1
2 4 5 2
3 6 7 2
4 8 9 4注: 表A,表B,表C的ID字段为主键
表B IID 与 表A 的ID 关联
表C IID 与 表B 的ID 关联
问: 怎么把DB1里的数据导入至DB2(DB2数据库表中已存在数据)
里面都有三个表 表A 表B 表C 表结构都一样。
DB1表数据如下
表A:
ID A1 A2
1 2 3
2 3 4
3 5 6表B:
ID B1 B2 IID
1 2 3 1
2 2 4 1
3 5 6 2
4 7 8 3表C:
ID C1 C2 IID
1 2 3 1
2 4 5 2
3 6 7 2
4 8 9 4注: 表A,表B,表C的ID字段为主键
表B IID 与 表A 的ID 关联
表C IID 与 表B 的ID 关联
问: 怎么把DB1里的数据导入至DB2(DB2数据库表中已存在数据)
insert into DB1..A select * from DB2..A
insert into DB1..B select * from DB2..B
insert into DB1..C select * from DB2..C
insert db2..表B select * from db1..表B
insert db2..表C select * from db1..表C
select * from DB1.dbo.tc
--如果不是则建立动态链接服务器,借用另外一个帖子
http://topic.csdn.net/u/20100706/13/d2dab46b-03da-4fcf-bd4d-b86fe5c8f357.html
不能插入重复键。。DB2数据库表中已存在数据中已经存在数据了。。
insert db2..表B select * from db1..表B where id not in(select id from db2..表B)
insert db2..表C select * from db1..表C where id not in(select id from db2..表C)
DB1里表A先导入至DB2里表A(因为DB2里表A已经有数据了)导入时它要产生新的ID主键
然后导入表B(因为DB2里表B也有数据了)且产生新的ID主键,表B的IID 要跟之前导入的表A 新的ID 主键进行关联
表C也一样。
我个菜鸟很纠结了。很久以前给一个朋友写了个小型的数据库软件,后来这个东西被他带到外地去使用了。现在要将两个数据库合并。