日期:2014-05-18  浏览次数:20670 次

【高分的简单问题】关于sql数据库表的插入问题
我用c#利用sql语句操作sql数据库,有两种数据库,一个是存有原始数据的数据库,一个是我自己设计的数据库,两个数据库的相应表的字段不同,但是有一些字段意思是一样的,我现在要写一个两个数据库中相应表字段的对应关系的sql 表(或是其他东西),每次通过读取这个对应关系来根据我自己数据库表字段来在装有原始数据的数据库表中抓取相应的字段的数据然后存入我得数据库。
另外还有一个问题是比如原始数据库A中有表a和我自己的数据库B中的b表对应,但是其中设置的外键可能不同,也就是说b表中的外键值可能不在a表,该怎么解决
请各问大哥给详细说下该怎么解决

------解决方案--------------------
建个库关系表,存你两个库的表对应关系,毕竟你明天你的表对应关系,程序不明白,相同表相同字段就不用存了

建个日志表,记录你数据同步中出错的

外键不同也没关系,如果你想不存在但有外键关系的可以插入成功,则不检测外键就可以了,否则记录到日志表,如何处理,你作主,呵呵 





------解决方案--------------------
[对应关系表] 表结构
([ID],[原始表],[你的表],[原始表_字段],[你的表_字段],[是否对应])
将原始表和你的表中有对应关系的字段一一配置到[对应关系表中]
然后再写一个存储读取[对应关系表],用动态拼接方式拼凑成SQL语句
------解决方案--------------------
没有约束,照样可以联合查询的