SQL:测试列是否具有“Not Null”属性

时间:2011-02-09 17:26:18

标签: sql sql-server sql-server-2008 sql-server-2000

是否有一个简单的查询来返回特定列是否允许空值? 我想将其更改为数据库升级脚本的一部分。

或者,改变它是否更好,即使它已经设置了?

编辑:这适用于SQL Server(需要支持2000或更高版本)

1 个答案:

答案 0 :(得分:19)

任何特定的RDBMS?

在SQL Server中

use master

SELECT COLUMNPROPERTY( OBJECT_ID('dbo.spt_values'),'number','AllowsNull')

或(更标准)

select IS_NULLABLE 
from INFORMATION_SCHEMA.COLUMNS 
where TABLE_SCHEMA='dbo' 
      AND TABLE_NAME='spt_values' 
      AND COLUMN_NAME='number'