更改列长度而不检查约束

时间:2013-09-06 04:56:24

标签: sql sql-server

我想用这个脚本更改列长度:

ALTER TABLE mytable ALTER COLUMN mycolumn VARCHAR (20)

但是当我运行上面的查询时,它会显示以下错误:

  

对象'FK_field'取决于列'mycolumn'

我用过

ALTER TABLE mytable NOCHECK CONSTRAINT FK_field 

但它仍无效。

那么如何在不检查约束的情况下更改列的长度?

提前致谢

1 个答案:

答案 0 :(得分:2)

删除约束:

ALTER TABLE mytable DROP CONSTRAINT [FK_field]

更改列的长度:

ALTER TABLE mytable ALTER COLUMN mycolumn VARCHAR (20)

再次创建约束:

ALTER TABLE mytable ADD FOREIGN KEY (FK_field) 
    REFERENCES ....