sql sever 2005 中复制多个、带自增主键、相互关联的表

利用导出向导可以导出此类数据,要注意的是,在导出时要选择“为多个表优化”,否则会出现主健不能写入数据的问题;“在事务中运行”最好也选上,如果发生异常,可以全部回滚

不过,利用导出向导导出数据时,要保证目标表都不存在或者都是空表,否则主外健的对应会与源表不一样。 举个例子,假设son表参考了father表,在源数据库里,假设son表中的第1条记录参考了father表的第1条记录(设主健值为1);复制数据时如果目标数据库中的father表中已有1000条数据(设主健值为1至1000),则源father表中的第1条记录拷到目标father表,第1条记录的主健值就变成了1001,而源son表复制到目标son表后,第1条记录参考的仍是father表中的主键1的记录!

===================================================

如果源表的最小的主健值为1000,而目标表不存在,拷贝后,目标表的主健值也是从1000开始

==================================================

如果目标表不存在,则建成的目标表没有任何主外健约束

==================================================

如果源表的主键是1,3,5,拷到已存在且刚建好的目标表后,主键会变成1,2,3

Leave a Comment

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.