数据库字典

这是个数据库字典查询方法.

先保留这两个语句,以后有时间我在详细说明来源.

 

查表字典:

SELECT     a.name AS 表名, b.value AS 描述, c.name AS 构架
FROM         sys.objects AS a LEFT OUTER JOIN
                      sys.extended_properties AS b ON a.object_id = b.major_id LEFT OUTER JOIN
                      sys.schemas AS c ON a.schema_id = c.schema_id
WHERE     (a.type = 'U') AND (b.minor_id = 0)

查字段字典:

select * from sys.extended_properties


SELECT     TOP (100) PERCENT d.name AS 表名, i.name AS 构架, a.colorder AS 字段序号, a.name AS 字段名, (CASE WHEN COLUMNPROPERTY(a.id, a.name,
                      'IsIdentity') = 1 THEN '√' ELSE '' END) AS 标识, (CASE WHEN
                          (SELECT     COUNT(*)
                            FROM          sysobjects
                            WHERE      (name IN
                                                       (SELECT     name
                                                         FROM          sysindexes
                                                         WHERE      (id = a.id) AND (indid IN
                                                                                    (SELECT     indid
                                                                                      FROM          sysindexkeys
                                                                                      WHERE      (id = a.id) AND (colid IN
                                                                                                                 (SELECT     colid
                                                                                                                   FROM          syscolumns
                                                                                                                   WHERE      (id = a.id) AND (name = a.name))))))) AND (xtype = 'PK')) > 0 THEN '√' ELSE '' END) AS 主键,
                      b.name AS 类型, a.length AS 占用字节数, COLUMNPROPERTY(a.id, a.name, 'PRECISION') AS 长度, ISNULL(COLUMNPROPERTY(a.id, a.name, 'Scale'),
                      0) AS 小数位数, (CASE WHEN a.isnullable = 1 THEN '√' ELSE '' END) AS 允许空, ISNULL(e.text, '') AS 默认值, ISNULL(g.value, '') AS 字段说明
FROM         sys.syscolumns AS a LEFT OUTER JOIN
                      sys.systypes AS b ON a.xtype = b.xusertype LEFT OUTER JOIN
                      sys.sysobjects AS d ON a.id = d.id AND d.xtype = 'U' AND d.name <> 'dtproperties' LEFT OUTER JOIN
                      sys.objects AS h ON d.id = h.object_id LEFT OUTER JOIN
                      sys.schemas AS i ON h.schema_id = i.schema_id LEFT OUTER JOIN
                      sys.syscomments AS e ON a.cdefault = e.id LEFT OUTER JOIN
                      sys.extended_properties AS g ON a.id = g.major_id AND a.colid = g.minor_id
ORDER BY a.id, 字段序号

 

看不明白没关系,慢慢地我会再详细写明如果设置字典.

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值