Transact-SQL 参考

COLUMNPROPERTY

返回有关列或过程参数的信息。

语法

COLUMNPROPERTY ( id , column , property )

参数

id

一个表达式,其中包含表或过程标识符 (ID)。

column

一个表达式,其中包含列或参数名称。

property

一个表达式,其中包含要为 id 返回的信息。该表达式可以取下列这些值中的任意一个。

描述 返回的值
AllowsNull 允许空值。 1 = TRUE
0 = FALSE
NULL = 无效的输入
IsComputed 该列为计算列。 1 = TRUE
0 = FALSE
NULL = 无效的输入
IsCursorType 过程参数属于CURSOR 类型。 1 = TRUE
0 = FALSE
NULL = 无效的输入
IsDeterministic 该列具有确定性。该属性只适用于计算列和视图列。 1 = TRUE
0 = FALSE
NULL = 无效的输入不是计算列或视图列。
IsFulltextIndexed 该列已经注册为全文索引。 1 = TRUE
0 = FALSE
NULL = 无效的输入
IsIdentity 该列使用IDENTITY 属性。 1 = TRUE
0 = FALSE
NULL = 无效的输入
IsIdNotForRepl 该列检查IDENTITY_INSERT 设置。如果指定了IDENTITY NOT FOR REPLICATION,则不检查IDENTITY_INSERT 设置。 1 = TRUE
0 = FALSE
NULL = 无效的输入
IsIndexable 该列可进行索引。 1 = TRUE
0 = FALSE
NULL = 无效的输入
IsOutParam 该过程参数为输出参数。 1 = TRUE
0 = FALSE
NULL = 无效的输入
IsPrecise 该列是精确的。该属性只适用于具有确定性的列。 1 = TRUE
0 = FALSE
NULL = 无效的输入不是具有确定性的列。
IsRowGuidCol 该列具有 uniqueidentifier 数据类型并且使用ROWGUIDCOL 属性进行定义。 1 = TRUE
0 = FALSE
NULL = 无效的输入
Precision 列或参数的数据类型的精度。 指定的列数据类型的精度

NULL = 无效的输入

Scale 列或参数的数据类型的小数位数。 小数位数

NULL = 无效的输入

UsesAnsiTrim 当开始创建表时,ANSI 填充设置为 ON。 1 = TRUE
0 = FALSE
NULL = 无效的输入

返回类型

int

注释

当检查列的确定性属性时,首先测试该列是否为计算列。IsDeterministic 对于非计算列返回 NULL。

可以将计算列指定为索引列。

示例

下面的示例返回 au_lname 列的长度。

SELECT COLUMNPROPERTY( OBJECT_ID('authors'),'au_lname','PRECISION')

请参见

元数据函数

OBJECTPROPERTY

TYPEPROPERTY