需求是用语句添加备注,但是我们用到的方法是一个很成熟的自带的方法sp_addextendedproperty 。先直接上例子解决当前的需求:
添加字段说明:
EXEC sys.sp_addextendedproperty @name = N'MS_Description',
@value = N'姓名',
@level0type = N'SCHEMA',
@level0name = N'dbo',
@level1type = N'TABLE',
@level1name = N'a', --修改的表名
@level2type = N'COLUMN',
@level2name = N'name'; --修改的字段
GO
结果:
sp_addextendedproperty的具体介绍如下:
语法如下:
sp_addextendedproperty
[ @name = ] { 'property_name' }
[ , [ @value = ] { 'value' }
[ , [ @level0type = ] { 'level0_object_type' }
, [ @level0name = ] { 'level0_object_name' }
[ , [ @level1type = ] { 'level1_object_type' }
, [ @level1name = ] { 'level1_object_name' }
[ , [ @level2type = ] { 'level2_object_type' }
, [ @level2name = ] { 'level2_object_name' }
]
]
]
]
[;]
[ @name ] = { 'property_name' }
要添加的属性的名称。 property_name 为 sysname ,不能为 NULL。 名称还可以包括空格或非字母数字字符串以及二进制值。
[ @value= ] { 'value'}
要与属性关联的值。 值sql_variant,默认值为 NULL。 value 的大小不能超过 7,500 个字节。
[ @level0type= ] { 'level0_object_type' }
级别 0 对象的类型。 level0_object_type 为 varchar (128) ,默认值为 NULL。
有效输入包括:ASSEMBLY、CONTRACT、EVENT NOTIFICATION、FILEGROUP、MESSAGE TYPE、PARTITION FUNCTION、PARTITION SCHEME、REMOTE SERVICE BINDING、ROUTE、SCHEMA、SERVICE、USER、TRIGGER、TYPE、PLAN GUIDE 和 NULL。
[ @level0name= ] { 'level0_object_name' }
所指定的级别 0 对象类型的名称。 level0_object_name 为 sysname ,默认值为 NULL。
[ @level1type= ] { 'level1_object_type' }
级别 1 对象的类型。 level1_object_type 为 varchar (128) ,默认值为 NULL。 有效输入包括 AGGREGATE、DEFAULT、FUNCTION、逻辑文件名、PROCEDURE、QUEUE、RULE、SEQUENCE、SYNONYM、TABLE、TABLE_TYPE、TYPE、VIEW、XML SCHEMA COLLECTION 和 NULL。
[ @level1name= ] { 'level1_object_name' }
所指定的级别 1 对象类型的名称。 level1_object_name 为 sysname,默认值为 NULL。
[ @level2type= ] { 'level2_object_type' }
级别 2 对象的类型。 level2_object_type 为 varchar (128) ,默认值为 NULL。 有效的输入包括:COLUMN、CONSTRAINT、EVENT NOTIFICATION、INDEX、PARAMETER、TRIGGER 和 NULL。
[ @level2name= ] { 'level2_object_name' }
所指定的级别 2 对象类型的名称。 level2_object_name 为 sysname,默认值为 NULL。