注意:
禁用约束只是相对于“检查约束”和“外键约束”来说的;其他种类的约束是禁止不了的,其他类型的约束要想禁用,就只能删除了,用的时候再重建。
1.
禁用约束的两种用途:
我们有的时候在想对一个表中的某一列或某几列创建检查约束时,表中已经含有大量的数据,这些数据可能不满足我们将要创建的检查约束,所以要让新建的约束对已经的数据不起作用,就是不去检查已经存在的数据,这时候在创建约束语句前,就要用到:with nocheck 语句。
另一种禁用约束的情况是,约束已经有啦,但我们想插入一些不符合约束的数据,这时候就可以先禁用检查约束或外键约束,等到插入数据结束后,在启用约束,启用后的约束并不对刚刚插入的数据进行检查,要不然,禁用约束就没有意义了。
2.
禁用约束的语句格式为:
禁用所有约束:nocheck constraint all
禁用指定约束:nocheck constraint 约束名
启用约束的语句格式为:
启用所有约束:check constraint all
启用指定约束:check constraint 约束名
值的注意的是:with nocheck 语句和禁用约束语句都紧跟在alter table 表名后面,然后再在其后进行对数据的操作。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。