取得SQLServer字段的描述内容 fn_listextendedproperty 返回数据库对象的扩展属性值。
语法 fn_listextendedproperty ( { default | [ @name = ] ''''property_name'''' | NULL } , { default | [ @level0type = ] ''''level0_object_type'''' | NULL } , { default | [ @level0name = ] ''''level0_object_name'''' | NULL } , { default | [ @level1type = ] ''''level1_object_type'''' | NULL } , { default | [ @level1name = ] ''''level1_object_name'''' | NULL } , { default | [ @level2type = ] ''''level2_object_type'''' | NULL } , { default | [ @level2name = ] ''''level2_object_name'''' | NULL } )
参数 {default|[@name =] ''''property_name''''|NULL}
是属性的名称。property_name 为 sysname 类型。有效的输入为 default、NULL 或属性名。
{default|[@level0type =] ''''level0_object_type''''|NULL}
用户或用户定义类型。level0_object_type 的数据类型为 varchar(128),其默认值为 NULL。有效的输入是 USER、TYPE、default 和 NULL。
{default|[@level0name =] ''''level0_object_name''''|NULL}
指定的 0 级对象类型的名称。level0_object_name 的数据类型为 sysname,其默认值为 NULL。有效的输入为 default、NULL 或对象名。
{default|[@level1type =] ''''level1_object_type''''|NULL}
1 级对象的类型。level1_object_type 的数据类型为 varchar(128),其默认值为 NULL。有效的输入为 TABLE、VIEW、PROCEDURE、FUNCTION、DEFAULT、RULE、default 和 NULL。
说明 默认映射 NULL,而"default"映射对象类型 DEFAULT。
{default|[@level1name =] ''''level1_object_name''''|NULL}
指定的 1 级对象类型的名称。level1_object_name 的数据类型为 sysname,其默认值为 NULL。有效的输入为 default、NULL 或对象名。
{default|[@level2type =] ''''level2_object_type''''|NULL}
2 级对象的类型。level2_object_type 的数据类型为 varchar(128),其默认值为 NULL。有效的输入为 COLUMN、PARAMETER、INDEX、CONSTRAINT、TRIGGER、DEFAULT、default(映射 NULL)和 NULL。
{default|[@level2name =] ''''level2_object_name''''|NULL}
指定的 2 级对象类型的名称。level2_object_name 的数据类型为 sysname,其默认值为 NULL。有效的输入为 default、NULL 或对象名。
返回表 下面是 fn_listextendedproperty 返回的表的格式。
列名 数据类型 objtype sysname objname sysname name sysname value sql_variant
如果返回的表为空,可能对象没有扩展属性或用户没有列出对象扩展属性的权限。
注释 系统对象不允许有扩展属性。
如果 property_name 的值为 NULL 或 default,fn_listextendedproperty 返回对象的所有属性。
如果指定了对象类型且相应的对象名的值为 NULL 或 default,则 fn_listextendedproperty 返回指定类型的所有对象的所有扩展属性。
对象是按级别区分的,0 级为最高,2 级为最低。如果指定了较低级别的对象(1 或 2 级)类型和名称,则父对象类型和名称的值不能为 NULL 或 default。否则,函数将返回错误。
用于列出某些级别对象类型的扩展属性的权限有所不同。
对于级别 0 的对象,如果某用户为级别 0 的名称中所标识的用户,或者是 db_owner 和 db_ddladmin 固定数据库角色的成员,则该用户可以列出指定"user"类型的扩展属性。
所有用户可使用 0 级对象类型"type"列出扩展属性。
对于 1 级对象,如果用户为对象的所有者或用户对于对象有权限,该用户可以用任何有效的类型值列出扩展属性。
对于 2 级对象,如果当前用户对父对象(1 级和 0级)有任何权限,该用户可以用任何有效的类型值列出扩展属性。 示例 此示例列出数据库的所有扩展属性。
SELECT * FROM ::fn_listextendedproperty(NULL, NULL, NULL, NULL, NULL, NULL, NULL)
-或-
SELECT * FROM ::fn_listextendedproperty(default, default, default, default, default, default, default)
此示例列出表"T1"中所有列的所有扩展属性。
CREATE table T1 (id int , name char (20))
EXEC sp_addextendedproperty ''''caption'''', ''''Employee ID'''', ''''user'''', dbo, ''''table'''', ''''T1'''', ''''column'''', id
EXEC sp_addextendedproperty ''''caption'''', ''''Employee Name'''', ''''user'''', dbo, ''''table'''', ''''T1'''', ''''column'''', name
SELECT * FROM ::fn_listextendedproperty (NULL, ''''user'''', ''''dbo'''', ''''table'''', ''''T1'''', ''''column'''', default)
下面是结果集:
objtype objname name value COLUMN id caption Employee ID COLUMN name caption Employee N
[办公软件]在sybase中插入图片、PDF、文本文件 [办公软件]安装Sybase ASE [办公软件]linux指令大全(完整篇) [办公软件]Linux新手入门常用命令大全 [办公软件]在RedHat Linux 9里安装gaim0.80 [办公软件]浅谈Linux 下Java 1.5 汉字方块问题解决方法 [办公软件]Linux程序员必读:中文化与GB18030标准 [办公软件]linux指令大全 [办公软件]制作Linux启动盘的四种方法 [办公软件]Linux文件系统的反删除方法
|