SQL Server中Table字典数据的查询SQL示例代码
作者:东山絮柳仔 发布时间:2024-01-25 13:47:49
标签:sqlserver,table,字典
前言
在数据库系统原理与设计(第3版)教科书中这样写道:
数据库包含4类数据:
1.用户数据
2.元数据
3.索引
4.应用元数据
其中,元数据也叫数据字典,定义如下:
下面这篇文章就来给大家分享一个关于查询SQL Server Table 结构的SQL 语句。
T-SQL 如下:
SELECT (case when a.colorder=1 then d.name else '' end) 表名,
a.colorder 字段序号,a.name 字段名,
(case when a.colorder=1 then isnull(f.value,'') else '' end) 表说明,
(case when COLUMNPROPERTY( a.id,a.name,'IsIdentity')=1 then '1'else '0' end)标识,
(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 '1' else '0' end) 主键,b.name 类型,a.length 占用字节数,
COLUMNPROPERTY(a.id,a.name,'PRECISION') as 长度,
isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0) as 小数位数,(case when
a.isnullable=1 then '1'else '0' end) 允许空,
isnull(e.text,'') 默认值,isnull(g.[value], ' ') AS [说明]
FROM syscolumns a
left join systypes b on a.xtype=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
--where b.name is not null
WHERE d.name='DBA_Server' --如果只查询指定表,加上此条件,此案例为表DBA_Server
order by a.id,a.colorder
查询出的结果如下:
来源:https://www.cnblogs.com/xuliuzai/p/9710407.html


猜你喜欢
- ASP实例代码,利用SQL语句动态创建Access表。留作参考,对在线升级数据库有用处.<% nowtime = now()
- 当我们使用访问一个没有声明的变量时,JS会报错;而当我们给一个没有声明的变量赋值时,JS不会报错,相反它会认为我们是要隐式申明一个全局变量。
- 如下所示:Uploadfiles = request.FILES.get('参数', '')for i in
- 也就在前几天,南太平洋岛国汤加发生火山喷发,有专门的专家学者分析,这可能是30年来全球规模最大的一次海底火山喷发,它引发的海啸以及火山灰将对
- NumPy数组的维数称为秩(rank),一维数组的秩为1,二维数组的秩为2,以此类推。在NumPy中,每一个线性的数组称为是一个轴(axes
- 1、登陆mysql数据库 mysql -u root -p查看user表mysql> use mysql;Database chang
- 排序算法排序也是在程序中经常用到的算法。无论使用冒泡排序还是快速排序,排序的核心是比较两个元素的大小。如果是数字,我们可以直接比较,但如果是
- Vuejs 本身就是一个 MVVM 的框架。但是在监听 window 上的 事件 时,往往会显得 力不从心。比如 这次是 window.re
- 计数器(Counter)是一个非常常用的功能组件,这篇blog以未读消息数为例,介绍了在 Django中实现一个高性能计数器的基本要点。故事
- 本文使用的是163邮件进行测试。注:163邮箱现在需要使用 客户端授权码 进行测试,不再支持邮箱密码进行测试。 
- 方法一使用findspark使用pip安装findspark:pip install findspark在py文件中引入findspark:
- 1、目的:在Python中实现只读取扩展名为xlsx的文件解决方法:使用os模块。解决思路:1、确定目录2、循环遍历每一个文件3、筛选符合条
- 前提条件,percona 5.6版本,事务隔离级别为RRmysql> show create table test_autoinc_l
- 1. 前言 本文介绍一个贝叶斯推断的pytho
- 调取摄像头的实现import numpy as npimport cv2cap = cv2.VideoCapture(0)#参数为0时调用本
- 错误号 错误信息5 &n
- 例1import osprint 'Process (%s) start...' %os.getpid()pid = os.
- 前言因为是国企线上应用的活动大屏,我就不附图了。代码仅供参考。一、vue配置1. 我是用vue-cli 搭建的,大屏项目复杂度不高,vue-
- 前言对于使用Vue的前端而言,watch、computed和methods三个属性相信是不陌生的,是日常开发中经常使用的属性。但是对于它们的
- pycharm是一款功能强大的python编辑器,具有跨平台性,鉴于目前最新版pycharm使用教程较少,为了节约大家摸索此IDE的时间,来