我将遗留应用程序(php + mysql)中的数据导入重写版本(sql server 2008和mvc3)。我目前正在编写db同步/转换包。
mysql数据有主键,但由于某种原因没有外键,因为数据仍然是关系型的(尽管缺少外键)我的转换包使用IDENTITY_INSERT ON / OFF。由于源数据无法强制执行数据完整性,因此我希望在执行插入并将IDENTITY_INSERT设置为OFF后执行完整性检查。
是否有一种编写该操作的好方法?最好是在表级而不是整个db?
感谢。
答案 0 :(得分:1)
我个人会在导入新架构之前确定哪些数据没有完整性。一个简单的WHERE NOT存在于每个子表上的查询(或者已被设计为子表的内容)将会这样做。我不会导入无法绑定到父记录的数据。但是,我会创建一个异常表并将这些记录移入其中,并让一些用户看看他们是否可以弄清楚父数据应该是什么。