请问是否有方法可以以编程方式确定Micorosft SQL Server数据库表字段是否有NULL或NOT NULL约束?我需要这样做是为了部署一个安全可重复运行的补丁。所以我需要像下面这样的东西(概念/伪代码):
所以如果还没有更改,我想将my_table.end_date从“NOT NULL”更改为“NULL”。我只是不确定方括号里应该放什么。
我知道如何查询dbo.sysobjects来查找现有字段、现有外键约束等(已经有一些线程在讨论这个问题),但我不确定如何专门检查NULL/NOT NULL字段约束。非常感谢您的帮助。
IF (my_table COLUMN end_date HAS CONSTRAINT OF 'NOT NULL') ALTER TABLE my_table ALTER COLUMN end_date DATETIME NULL
所以如果还没有更改,我想将my_table.end_date从“NOT NULL”更改为“NULL”。我只是不确定方括号里应该放什么。
我知道如何查询dbo.sysobjects来查找现有字段、现有外键约束等(已经有一些线程在讨论这个问题),但我不确定如何专门检查NULL/NOT NULL字段约束。非常感谢您的帮助。