工作了小半年,之前复制备份都是bak或者sql,但sql语句存在约束时会报错。
今天忘记开启事务便update了整张表的数据,属实笨比。
表之间存在着外键约束,导致sql运行会出错,所以需要关闭他才能使用sql进行备份。所以在备份前关闭即可(不用改,直接查询运行):
禁用:
EXEC sp_MSforeachtable @command1='alter table ? NOCHECK constraint all';
关闭:
EXEC sp_MSforeachtable @command1='alter table ? CHECK constraint all';
另外:MYSQL禁用和开启为:
SET FOREIGN_KEY_CHECKS=0;
SET FOREIGN_KEY_CHECKS=1;