在 SQL Server 中,我的表上有一个新列:
ALTER TABLE t_tableName
ADD newColumn NOT NULL
这会失败,因为我指定了 NOT NULL
而没有指定默认约束。该表不应有默认约束。
为了解决这个问题,我可以创建具有默认约束的表,然后将其删除。
但是,似乎没有任何方法可以指定默认约束应命名为该语句的一部分,因此我摆脱它的唯一方法是使用一个存储过程在sys.default_constraints
表。
对于可能经常发生的操作来说,这有点困惑/冗长。有没有人有更好的解决方案?
最佳答案
这应该有效:
ALTER TABLE t_tableName
ADD newColumn VARCHAR(50)
CONSTRAINT YourContraintName DEFAULT '' NOT NULL
关于sql - 我可以在 SQL Server 中的添加列语句中创建命名默认约束吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3770015/