当前位置: 首页 > 工具软件 > ms-sys > 使用案例 >

SQL SERVER添加表注释、字段注释-sys.extended_properties

上官和惬
2023-12-01

SQL SERVER添加表注释、字段注释

user, table, column的值不变

execute sp_addextendedproperty N'名称', N'描述','user','dbo','table','parent','column','name';
SELECT * FROM sys.databases WHERE name = 'TESTDB'
SELECT * FROM sys.tables WHERE name = 'parent'
SELECT * FROM sys.columns WHERE [object_id] = 821577965
SELECT * FROM sys.extended_properties WHERE class = 1 AND major_id = 821577965

此示例为导出某个表注释的语句:(表名是bbs_bank_log)

SELECT DISTINCT
	d.name,
	f.value 
FROM
	syscolumns a
	LEFT JOIN systypes b ON a.xusertype= b.xusertype
	INNER JOIN sysobjects d ON a.id= d.id 
	AND d.xtype= 'U' 
	AND d.name<> 'dtproperties'
	LEFT JOIN syscomments e ON a.cdefault= e.id
	LEFT JOIN sys.extended_properties g ON a.id= G.major_id 
	AND a.colid= g.minor_id
	LEFT JOIN sys.extended_properties f ON d.id= f.major_id 
	AND f.minor_id= 0

注意事项:

sysobjects是系统对象表,syscolumns是系统字段信息表,systypes是系统类型表。

通过字段的ID和sysproperties(系统注释属性表)关联,即可读出注释信息。

查看并导出SQL Server 2005以上数据表中字段的注释信息:

select minor_id,value from sys.extended_properties where major_id=数据表在数据库中的ID Order By minor_id

sysobjects是系统对象表,syscolumns是系统字段信息表,systypes是系统类型表。
通过字段的ID和sysproperties(系统注释属性表)关联,即可读出注释信息。

--为字段添加注释
--Eg. execute sp_addextendedproperty 'MS_Description','字段备注信息','user','dbo','table','字段所属的表名','column','添加注释的字段名';
execute sp_addextendedproperty 'MS_Description','add by liyc. 诊断类别码','user','dbo','table','DiagRecord','column','DiagTypeCode';
-- 删除表注释
execute sp_dropextendedproperty 'MS_Description','user','dbo','table','DiagRecord',null,null;
--修改字段注释
execute sp_updateextendedproperty 'MS_Description','add by liyc.','user','dbo','table','DiagRecord','column','DiagTypeCode';
 -- 添加表注释
execute sp_addextendedproperty 'MS_Description','诊断记录文件','user','dbo','table','DiagRecord',null,null;
 
-- 修改表注释
execute sp_updateextendedproperty 'MS_Description','诊断记录文件1','user','dbo','table','DiagRecord',null,null;

-- 说明:
-- 1.增加、修改、删除注释调用不同的存储过程  
-- 2.增加、修改注释调用的存储过程参数数量和含义相同,删除备注比前两者少了一个“备注内容”的参数
-- 3.为表添加注释相比于为字段添加注释,最后两个参数为null

 类似资料: