SQL Server给字段添加注释的两种方式:1.可视化设计器中,2.sp_addextendedproperty系统存储过程

时间:2024-04-11 21:43:43

1.在可视化设计器中为表字段添加注释

SQL Server给字段添加注释的两种方式:1.可视化设计器中,2.sp_addextendedproperty系统存储过程

2.利用系统存储过程sp_addextendedproperty

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' } 
                        ] 
                ]
        ] 
    ] 


该存储过程一共有8个参数,估计初学者一看就晕了,不要着急,我们可以通过实例来理解,下面我们先利用sp_addextendedproperty为 S#列 加上说明:

SQL Server给字段添加注释的两种方式:1.可视化设计器中,2.sp_addextendedproperty系统存储过程



EXEC sys.sp_addextendedproperty 
         @name=N'MS_Description', @value=N'学生编号' , 
         @level0type=N'SCHEMA',@level0name=N'dbo', 
         @level1type=N'TABLE',@level1name=N'Student', 
         @level2type=N'COLUMN',@level2name=N'S#'
GO


上面就是为列S#加上说明的SQL命令,来理解一下:
虽然sp_addextendedproperty有8个参数,但我们可以把这个8个参数理解为4对,其实看参数名我们也可以猜出大概了:
@name与@value为一对
@level0type与@level0name为一对
@level1type与@level1name为一对
@level2type与@level2name为一对

那么这4对参数分别代表什么呢?
1,@name与@value
@name:指定我们是要为列添加什么信息,比如我们要为列添加扩展信息,那么@name就等于'Caption',本篇是要为列添加说明信息,所以@name等于'MS_Description'
@value:指定与@name关联的值,本篇也就是列的具体说明。

2,@level0type与@level0name
@level0type:指定我们要修改的列的表所于那个数据库架构,所以它等于'SCHEMA',有些网上教程中会说它也可以等于'user',但在sql server的未来版本中,将删除'user',所以推荐大家用'SCHEMA'
@level0name:指定我们要修改的表所在架构的名称

3,@level1type与@level1name
@level1type:指明我们要修改的列所属对象是表,还是视图等。本篇是修改表中的列,所以为'table',
@@level1name: 指明要修改的列所属表的名称

4,@level2type与@level2name
@level2type:指明我们要修改的对象是列,还是主键,还是约束等。本篇修改的是列,所以为'column'
@level2name:指明要修改列的列名

到此,我们应该了解sp_addextendedproperty中各参数的意思了。

为多个列添加注释需要多行SQL:

SQL Server给字段添加注释的两种方式:1.可视化设计器中,2.sp_addextendedproperty系统存储过程