如何查询数据库里的表的备注?

如何查询数据库里的表的备注?,第1张

表不能备注,表中的字段可以备注,下面的代码可以读取表中字段的备注

Declare @tblName nvarchar(1000)

set @tblName='表名'

declare @TblID int

set @TblID=(select [object_id] as tblID from sys.all_objects where [type] ='U' and [name]<>'dtproperties' and [name]=@tblName)

select syscolumns.name as ColumnName,

systypes.name as ColumnType,

syscolumns.length as ColumnLength,

(SELECT [value] FROM ::fn_listextendedproperty(NULL, 'user', 'dbo', 'table', object_name(@TblID), 'column', syscolumns.name) as e where e.name='MS_Description') as ColumnDescription

from sysColumns

left join sysTypes on sysTypes.xtype = sysColumns.xtype and sysTypes.xusertype = sysColumns.xusertype

left join sysobjects on sysobjects.id = syscolumns.cdefault and sysobjects.type='D'

left join syscomments on syscomments.id = sysobjects.id

where syscolumns.id=@TblID

表名那换成你想读取的表就行

,听说过数据库 可以给字段进行备注,如下语句

`id` int(10) unsigned NOT NULL auto_increment COMMENT '自增id',

这样之后,我要查看备注,语句是什么呢?如下是我在百度找到的一个语句:

SELECT COLUMN_NAME, DATA_TYPE AS `数据类型`, CHARACTER_MAXIMUM_LENGTH  AS `字符长度`, NUMERIC_PRECISION AS `数字长度`, NUMERIC_SCALE AS `小数位数`, IS_NULLABLE AS `是否允许非空`, CASE WHEN EXTRA = 'auto_increment' THEN 1 ELSE 0 END AS `是否自增`, COLUMN_DEFAULT  AS  `默认值`, COLUMN_COMMENT  AS  `备注` FROM information_schema.COLUMNS WHERE TABLE_NAME='表名" . $table . "' AND TABLE_SCHEMA = '数据库名" . $database . "'


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/9632020.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存