delphi ,SQL 2000如何实现数据库数据合并?
单机版数据库在综合应用计算机A上数据库aaaa表a-户主表,字段户主编号(主键),姓名,身份证号等表b-家庭人员表,字段家庭人员编号(主键),户主编号,与户主关系,姓名,...
单机版数据库
在综合应用计算机A上
数据库 aaaa
表a-户主表,字段 户主编号(主键),姓名,身份证号等
表b-家庭人员表,字段 家庭人员编号(主键),户主编号,与户主关系,姓名,身份证号等
同样,其它分布计算机B上也是同样的数据库
数据库 aaaa
表a-户主表,字段 户主编号,姓名,身份证号等
表b-家庭人员表,字段 家庭人员编号,户主编号,与户主关系,姓名,身份证号等
A,B计算机均可以添加删除数据,A,B中均已有部分数据
目的:要将B的数据导入A中。
要求:1.相同身份证号的B中数据与A中完全相同的,不添加到A中
2.相同身份证号的B中数据与A中不完全相同的,更新A中数据
3.A中无此身份证号的数据,新添加到A中
注意:A中的记录长度一般比B的长,B中来的数据主键绝大多数与A重复(因为在不同的计算机上,相同的编码方式)
如现在A中记录
表a-户主表,字段 户主编号(主键),姓名,身份证号等
1 王强 1234
2 李三 2345
4 张扬 9870
5 张天 6785
如现在B中记录
表a-户主表,字段 户主编号(主键),姓名,身份证号等
1 王海 1234
2 钱通 3456
3 李三 2345
将B导入A,
B中户主编号1的记录到A中户主编号1的‘姓名’要更改
B中户主编号2的记录到A中无此记录,应编号为6,添加新记录
B中户主编号3的记录在A中有完全相同记录(除主键外),不予在A中再添加
请问如何实现? 展开
在综合应用计算机A上
数据库 aaaa
表a-户主表,字段 户主编号(主键),姓名,身份证号等
表b-家庭人员表,字段 家庭人员编号(主键),户主编号,与户主关系,姓名,身份证号等
同样,其它分布计算机B上也是同样的数据库
数据库 aaaa
表a-户主表,字段 户主编号,姓名,身份证号等
表b-家庭人员表,字段 家庭人员编号,户主编号,与户主关系,姓名,身份证号等
A,B计算机均可以添加删除数据,A,B中均已有部分数据
目的:要将B的数据导入A中。
要求:1.相同身份证号的B中数据与A中完全相同的,不添加到A中
2.相同身份证号的B中数据与A中不完全相同的,更新A中数据
3.A中无此身份证号的数据,新添加到A中
注意:A中的记录长度一般比B的长,B中来的数据主键绝大多数与A重复(因为在不同的计算机上,相同的编码方式)
如现在A中记录
表a-户主表,字段 户主编号(主键),姓名,身份证号等
1 王强 1234
2 李三 2345
4 张扬 9870
5 张天 6785
如现在B中记录
表a-户主表,字段 户主编号(主键),姓名,身份证号等
1 王海 1234
2 钱通 3456
3 李三 2345
将B导入A,
B中户主编号1的记录到A中户主编号1的‘姓名’要更改
B中户主编号2的记录到A中无此记录,应编号为6,添加新记录
B中户主编号3的记录在A中有完全相同记录(除主键外),不予在A中再添加
请问如何实现? 展开
3个回答
展开全部
第一种:
update A
from
(
select 姓名,身份证号 from B
) as b
where 身份证号 = b,身份证号
第二种:
select 姓名,身份证号 into A from B
where 身份证号 not in
(
select 身份证号 from B
)
update A
from
(
select 姓名,身份证号 from B
) as b
where 身份证号 = b,身份证号
第二种:
select 姓名,身份证号 into A from B
where 身份证号 not in
(
select 身份证号 from B
)
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
做两个连接,分别连接两个数据库,然后一个主,根据记录循环判断,该update的update,该insert的insert
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你以为是两个数据库一联系上,两个库的数据就搞到一起去了,不是的,逐条检查,A库有,B库没有就把库的数据写到A库中,搞完之后,再把B库的数据清除.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询