• MS SQL为字段添加说明


    以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'
    View Code

    执行结果:

    如果你不清楚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'
    View Code

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

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

     EXECUTE [sys].[sp_dropextendedproperty] 'MS_Description',
                                             'SCHEMA', N'dbo',
                                             'TABLE', N'Q',
                                             'COLUMN', N'qty'
    View Code

    或者,你不想这样麻烦,你可以直接使用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'
    View Code

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

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

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

  • 相关阅读:
    List of 3rd Party .NET UI & Reporting Components
    cannot open window service on computer '.' in window application
    CentOS7重新生成 /boot/grub2/grub.cfg
    vmware esxi 查看网卡、Raid卡驱动
    libcmt.lib和msvcrt.lib冲突,原因和解决方法
    C/C++注释规范
    lsof命令查看端口关联的文件
    linux下查看磁盘分区的文件系统格式
    编译linux kernel及制作initrd ( by quqi99 )
    三种虚拟化技术比较
  • 原文地址:https://www.cnblogs.com/insus/p/12106589.html
Copyright © 2020-2023  润新知