【发布时间】:2009-04-30 17:52:23
【问题描述】:
我部署了一个现有程序,其中一些客户数据库的字段设置为不为空,而另一些则可以为空。我需要运行一个补丁来更正数据库,以便该列可以为空,但不需要对所有数据库运行它,只需要对不正确的数据库运行它。是否有一种简单的方法可以在 SQL Server 中用于执行此检查?最好是可以作为 SQL 脚本的一部分运行的东西。
【问题讨论】:
标签: sql sql-server tsql
我部署了一个现有程序,其中一些客户数据库的字段设置为不为空,而另一些则可以为空。我需要运行一个补丁来更正数据库,以便该列可以为空,但不需要对所有数据库运行它,只需要对不正确的数据库运行它。是否有一种简单的方法可以在 SQL Server 中用于执行此检查?最好是可以作为 SQL 脚本的一部分运行的东西。
【问题讨论】:
标签: sql sql-server tsql
查看 INFORMATION_SCHEMA 视图。例如:
SELECT
IS_NULLABLE
FROM
My_DB.INFORMATION_SCHEMA.COLUMNS
WHERE
TABLE_SCHEMA = 'dbo' AND
TABLE_NAME = 'My_Table' AND
COLUMN_NAME = 'My_Column'
IS_NULLABLE 将是“YES”或“NO”。
【讨论】:
select Table_Name, Column_Name, Is_Nullable
from information_schema.columns
将为您提供该信息
【讨论】:
select isnullable from syscolumns where name = 'status'
【讨论】: