为SQL Server表中的列添加/修改/删除注释属性(sp_addextendedproperty、sp_updateextendedproperty、sp_dropextendedproperty)
本篇基本完全参考:sql--sp_addextendedproperty和sp_updateextendedproperty (Transact-SQL)
三个存储过程用法一样,以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'}
- 要与属性关联的值。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。
-
重要提示 将来的 SQL Server 版本中将删除在级别 1 类型对象的扩展属性中指定 USER 作为级别 0 类型的功能。 改用 SCHEMA 作为级别 0 类型。 例如,在定义表的扩展属性时,指定表的架构而不是用户名。 将来的 SQL Server 版本中将删除指定 TYPE 作为级别 0 类型的功能。 对于 TYPE,请使用 SCHEMA 作为级别 0 类型,使用 TYPE 作为级别 1 类型。
- [ @level0name= ] { 'level0_object_name' }
- 所指定的级别 0 对象类型的名称。level0_object_name 的数据类型为 sysname,默认值为 NULL。
- [ @level1type= ] { 'level1_object_type' }
- 级别 1 对象的类型。level1_object_type 的数据类型为 varchar(128),默认值为 NULL。有效的输入包括:AGGREGATE、DEFAULT、FUNCTION、LOGICAL FILE NAME、PROCEDURE、QUEUE、RULE、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。
- 举例:
- 1.创建测试表:
if exists(select 1 from sys.tables where object_id=object_id('TestTable'))
begin
drop table TestTable
end
create table TestTable
(
ColumnA varchar(50),
ColumnB varchar(50)
)
2.为ColumnA列添加注释:
exec sp_addextendedproperty
@name=N'MS_Description',
@value=N'列A的注释',
@level0type=N'SCHEMA',
@level0name=N'dbo',
@level1type=N'TABLE',
@level1name=N'TestTable',
@level2type=N'COLUMN',
@level2name=N'ColumnA'
3.查看结果:
或者执行sql语句:
select col.Name,ext.value
from sys.extended_properties ext
inner join sys.columns col on ext.major_id=col.object_id and ext.minor_id=col.column_id
where ext.major_id=object_id('TestTable')
结果:
为SQL Server表中的列添加/修改/删除注释属性(sp_addextendedproperty、sp_updateextendedproperty、sp_dropextendedproperty)的更多相关文章
- 在一个SQL Server表中的多个列找出最大值
在一个SQL Server表中一行的多个列找出最大值 有时候我们需要从多个相同的列里(这些列的数据类型相同)找出最大的那个值,并显示 这里给出一个例子 IF (OBJECT_ID('tempdb..# ...
- SQL server 表中如何创建索引?
SQL server 表中如何创建索引?看个示例,你就会了 use master goif db_id(N'zhangxu')is not nulldrop database zhangxugocre ...
- 05Microsoft SQL Server 表创建,查看,修改及删除
Microsoft SQL Server 表创建,查看,修改及删除 创建表 创建普通表 use 数据库名称 go create table 表名称( 列1 ) not null, 列2 ) not n ...
- 09Microsoft SQL Server 表数据插入,更新,删除
Microsoft SQL Server 表数据插入,更新,删除 向表中插入数据 INSERT INTO insert into tb1 values(0004,'张凤凤') insert into ...
- sql得到表中的列信息
取列全部用的 sys. 中的表 CTE:WITH name AS() 用法: sql树形查询 ①主键信息 SELECT ic.column_id, ic.index_column_id, ic.o ...
- SQL Server:把CSV文件导入到SQL Server表中
有时候我们可能会把CSV中的数据导入到某个数据库的表中,比如做报表分析的时候. 对于这个问题,我想一点也难不倒程序人员吧!但是要是SQL Server能够完成这个任务,岂不是更好! 对,SQL Ser ...
- 把CSV文件导入到SQL Server表中
保存数据库数据直接查询select * from tableName 在数据表格的左上角右击——将结果另存为选择路劲保存好的就是.csv格式的数据 有时候我们可能会把CSV中的数据导入到某个数据库的表 ...
- 在一个SQL Server表中一行的多个列找出最大值
有时候我们需要从多个相同的列里(这些列的数据类型相同)找出最大的那个值,并显示 这里给出一个例子 IF (OBJECT_ID('tempdb..##TestTable') IS NOT NULL) D ...
- 导出 SQL SERVER 表中数据为脚本
ALTER PROCEDURE [dbo].[Usp_OutputData] @tablename sysname, @outputIdentitycolumn int AS declare @col ...
随机推荐
- ASP.NET 路由
URL 模式可以包含文本值和变量占位符(也称为“URL 参数”). 文本和占位符位于由斜杠 (/) 字符分隔的 URL 段中. 当生成请求时,URL 分析为段和占位符,变量值提供给请求处理程序. ...
- stl binary search
stl binary search */--> pre { background-color: #2f4f4f;line-height: 1.6; FONT: 10.5pt Consola,&q ...
- [LeetCode] Interleaving String 解题思路
Given s1, s2, s3, find whether s3 is formed by the interleaving of s1 and s2. For example,Given:s1 = ...
- wand(weak and)算法基本思路
一般搜索的query比较短,但如果query比较长,如是一段文本,需要搜索相似的文本,这时候一般就需要wand算法,该算法在广告系统中有比较成熟的应该,主要是adsense场景,需要搜索一个页面内容的 ...
- hdoj 2147 kiki's game【博弈】
kiki's game Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 40000/10000 K (Java/Others)Total ...
- redhat开启linux server
1.redhat linux5 enterprize 默认情况下是没有安装telnet server,可以使用rpm -q telnet查询,下图是安装后的查询结果
- nginx配置文件的说明
设置连接超时时间 http { ## # Basic Settings ## sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout ...
- mvn开发可执行的java程序
1. 用maven-assembly-plugin插件 2. 在项目的pom文件中加入以下该插件的配置 <span style="font-size:18px;">& ...
- 基于前端javascript的搜索功能
发表于 2013/11/07 当在数据量不是很大,而且没有后端对应的功能接口的时候,一些简单的搜索功能基本上是前端去实现的,正好最近用到,写了一个,贴出来和大家分享: 功能描述: 按下键盘后及时搜索条 ...
- SSH开源框架考试题
一.选择题 1.不属于Action接口中定义的字符串常量的是____B___. A.SUCCESS B.FAILURE C.ERROR ...