欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

MS SQL为字段添加说明

程序员文章站 2022-06-03 20:45:55
以ms sql server 14 v17为例。 如下表dbo.Q中有一个字段'' 首先在数据库的系统存储过程列表中: 找到sys.sp_addextendedproperty,使用这个为字段添加一个说明。 EXECUTE [sys].[sp_addextendedproperty] @name=N ......

以ms sql server 14  v17为例。

如下表dbo.q中有一个字段''

 

 

首先在数据库的系统存储过程列表中:

 

找到sys.sp_addextendedproperty,使用这个为字段添加一个说明。

 

execute [sys].[sp_addextendedproperty]
@name=n'ms_description', @value=n'数量' ,
@level0type=n'schema',@level0name=n'dbo',
@level1type=n'table',@level1name=n'q',
@level2type=n'column',@level2name=n'qty'

 

执行结果:

 

如果你不清楚ms_description是否存在时,再次执行上面的存储过程,你会得到一个error提示:

 

这个时候,你可以在执行前,先来判断一下是否存在:

 

if exists (select top 1 1 from fn_listextendedproperty('ms_description', 'schema', n'dbo', 'table', n'q', 'column', n'qty'))
    print 'exists'
else
    print 'not exists'

 

好的,如果我们知道说明属性已经存在,但内容不正确,我们想要修改它:

此时,你可以drop之后,再添加。

 execute [sys].[sp_dropextendedproperty] 'ms_description',
                                         'schema', n'dbo',
                                         'table', n'q',
                                         'column', n'qty'

 

或者,你不想这样麻烦,你可以直接使用update来处理。

 

execute [sys].[sp_updateextendedproperty] 
@name=n'ms_description', @value=n'库存数量' ,
@level0type=n'schema',@level0name=n'dbo',
@level1type=n'table',@level1name=n'q',
@level2type=n'column',@level2name=n'qty'

 

再次去看看修改后的字段说明内容

 

到最后,想说的,可以写成一个动态的sql包装成一个自定义存储过程。

这样子,我们不管是在添加,或是更新时,直接传入参数即可。