查询以检查列是否可为空(列中是否允许空值)。 它最好返回yes / no或1/0或true / false。
答案 0 :(得分:68)
您可以从sys.columns
select is_nullable
from sys.columns
where object_id = object_id('Schema.TheTable')
and name = 'TheColumn'
答案 1 :(得分:60)
您还可以使用COLUMNPROPERTY
和OBJECT_ID
元数据功能:
SELECT COLUMNPROPERTY(OBJECT_ID('SchemaName.TableName', 'U'), 'ColumnName', 'AllowsNull');
答案 2 :(得分:6)
您还可以检查表格中的所有列是否可以使用' nullable'您想要的属性或任何其他属性,例如我们需要查询名为Bank.Table的表
column name
,data type
,Character Max Length
,is nullable
像这个例子一样使用SQL Information_Schema:
SELECT
COL.COLUMN_NAME,
COL.DATA_TYPE,
COL.CHARACTER_MAXIMUM_LENGTH,
COL.IS_NULLABLE
FROM INFORMATION_SCHEMA.COLUMNS COL
WHERE COL.TABLE_NAME = 'Bank'
结果应该是这样的: