SQL SERVER中如何用SQL语句给表的栏位加注释--sp_addextendedpropert

本文涉及的产品
云数据库 RDS SQL Server,独享型 2核4GB
简介:

SQL SERVER中如何用SQL语句给表的栏位加注释

 
关于注释这个问题,之前没用SQL语句去添加过,都是在Enterprise Manager里面添加的:(
 
查了一下资料,得知Microsoft在SQL Server™ 2000中引入了扩展属性,用户可在各种数据库对象上定义这些属性。这些扩展属性可用于存储与数据库对象有关的应用程序或站点特有的信息。
 
可以用 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。名称可能还包括空白或非字母数字字符串和二进制值。
 
注:property_name='MS_Description'时,为添加注释
 
[ @value = ] { 'value' }
将要与属性相关联的值。value 的数据类型为 sql_variant,带有默认设置 NULL。value 的大小不能超过 7,500 字节;否则 SQL Server 会产生错误。
 
[ @level0type = ] { 'level0_object_type' }
用户或用户定义类型。level0_object_type 的数据类型为 varchar(128),其默认值为 NULL。有效的输入是 USER、TYPE 和 NULL。
 
[ @level0name = ] { 'level0_object_name' }
指定的 0 级对象类型的名称。level0_object_name 的数据类型为 sysname,其默认值为 NULL。
 
[ @level1type = ] { 'level1_object_type' }
1 级对象的类型。level1_object_type 的数据类型为 varchar(128),其默认值为 NULL。有效的输入是 TABLE、VIEW、PROCEDURE、FUNCTION、DEFAULT、RULE 和 NULL。
 
[ @level1name = ] { 'level1_object_name' }
指定的 1 级对象类型的名称。level1_object_name 的数据类型为 sysname,其默认值为 NULL。
 
[ @level2type = ] { 'level2_object_type' }
2 级对象的类型。level2_object_type 的数据类型为 varchar(128),其默认值为 NULL。有效的输入是 COLUMN、PARAMETER、INDEX、CONSTRAINT、TRIGGER 和 NULL。
 
[ @level2name = ] { 'level2_object_name' }
指定的 2 级对象类型的名称。level2_object_name 的数据类型为 sysname,其默认值为 NULL。
 
返回代码值
0(成功)或 1(失败)
 
注释

1.系统对象不允许有扩展属性。
 
2. 对象是按级别区分的,0 级为最高,2 级为最低。当用户添加、更新或删除扩展属性时,必须指定所有更高级别的对象。例如,如果用户要向 1 级对象添加扩展属性,就必须指定所有 0 级信息。如果用户要向 2 级对象添加扩展属性,则必须提供关于 0 级和 1 级的所有信息。
 
3.在每个级别上,对象类型和对象名可唯一地标识对象。如果指定了一个对中的任一方,则必须指定另一方。
 
4.给定了有效 property_name 和 value,如果没有任何对象类型和名称,则属性属于当前数据库。如果指定对象类型和名称,则还必须指定父对象和类型。否则,SQL Server 会产生错误。
 
权限
db_owner 和 db_ddladmin 固定数据库角色的成员可以将扩展属性添加到任何对象中。用户可以为他们所拥有的对象添加扩展属性。然而,只有 db_owner 可以将属性添加到用户名称中。
 
示例

下面的示例给表"T1"的"ID"列添加注释:

Create table T1 (id int , name char (20))
GO
EXEC sp_addextendedproperty 'MS_Description', 'Employee ID', 'user', dbo, 'table', T1, 'column', id
 
另外
 
sp_updateextendedproperty:更新现有扩展属性的值。
 
sp_dropextendedproperty:除去现有的扩展属性。
 
FN_LISTEXTENDEDPROPERTY:检索现有扩展属性的值
 
 
在Oracle中可用COMMENT语句给栏位加注释,如下:
 
COMMENT ON COLUMN employees.job_id 
   IS 'abbreviated job title';
 
删除注释:
 
COMMENT ON COLUMN employees.job_id IS ' ';
 
更详细的语法参考Oracle文档


 本文转自灵动生活博客园博客,原文链接:http://www.cnblogs.com/ywqu/archive/2009/01/12/1373957.html ,如需转载请自行联系原作者
相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情: https://www.aliyun.com/product/rds/sqlserver
相关文章
|
14天前
|
SQL 数据可视化 算法
SQL Server聚类数据挖掘信用卡客户可视化分析
SQL Server聚类数据挖掘信用卡客户可视化分析
|
2天前
|
SQL 存储 数据库连接
LabVIEW与SQL Server 2919 Express通讯
LabVIEW与SQL Server 2919 Express通讯
|
3天前
|
SQL Windows
安装SQL Server 2005时出现对性能监视器计数器注册表值执行系统配置检查失败的解决办法...
安装SQL Server 2005时出现对性能监视器计数器注册表值执行系统配置检查失败的解决办法...
12 4
|
4天前
|
SQL 数据可视化 Oracle
这篇文章教会你:从 SQL Server 移植到 DM(上)
这篇文章教会你:从 SQL Server 移植到 DM(上)
|
4天前
|
SQL 关系型数据库 数据库
SQL Server语法基础:入门到精通
SQL Server语法基础:入门到精通
SQL Server语法基础:入门到精通
|
4天前
|
SQL 存储 网络协议
SQL Server详细使用教程
SQL Server详细使用教程
26 2
|
4天前
|
SQL 存储 数据库连接
C#SQL Server数据库基本操作(增、删、改、查)
C#SQL Server数据库基本操作(增、删、改、查)
7 0
|
4天前
|
SQL 存储 小程序
数据库数据恢复—Sql Server数据库文件丢失的数据恢复案例
数据库数据恢复环境: 5块硬盘组建一组RAID5阵列,划分LUN供windows系统服务器使用。windows系统服务器内运行了Sql Server数据库,存储空间在操作系统层面划分了三个逻辑分区。 数据库故障: 数据库文件丢失,主要涉及3个数据库,数千张表。数据库文件丢失原因未知,不能确定丢失的数据库文件的存放位置。数据库文件丢失后,服务器仍处于开机状态,所幸未写入大量数据。
数据库数据恢复—Sql Server数据库文件丢失的数据恢复案例
|
5天前
|
SQL 存储 关系型数据库
SQL Server详细使用教程及常见问题解决
SQL Server详细使用教程及常见问题解决
|
6天前
|
SQL 安全 数据库
SQL Server 备份和还原
SQL Server 备份和还原