SQL Server中Table字典数据的查询SQL示例代码
SQL Server中Table字典数据的查询SQL示例代码
前言
在数据库系统原理与设计(第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 sysobjectsWHERE (name in (SELECT name FROM sysindexesWHERE (id = a.id) AND (indid in(SELECT indid FROM sysindexkeysWHERE (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 whena.isnullable=1 then '1'else '0' end) 允许空,isnull(e.text,'') 默认值,isnull(g.[value], ' ') AS [说明]FROM syscolumns aleft join systypes b on a.xtype=b.xusertypeinner join sysobjects d on a.id=d.id and d.xtype='U' and d.name<>'dtproperties'left join syscomments e on a.cdefault=e.idleft join sys.extended_properties g on a.id=g.major_id AND a.colid=g.minor_idleft join sys.extended_properties f on d.id=f.major_id and f.minor_id=0--where b.name is not nullWHERE d.name='DBA_Server' --如果只查询指定表,加上此条件,此案例为表DBA_Serverorder by a.id,a.colorder
SQL Server中Table字典数据的查询SQL示例代码的更多相关文章
- SQL Server 关于 Table 字典数据的查询SQL
分享一个关于查询SQL Server Table 结构的SQL 语句. T-SQL 如下: SELECT (case when a.colorder=1 then d.name else '' end ...
- SQL Server中INNER JOIN与子查询IN的性能测试
这个月碰到几个人问我关于"SQL SERVER中INNER JOIN 与 IN两种写法的性能孰优孰劣?"这个问题.其实这个概括起来就是SQL Server中INNER JOIN与子 ...
- sql Server中临时表与数据表的区别
sql server 中临时表与数据表的区别 1.如何判断临时表和数据表已生成 --如何判断临时表是否已创建--- if exists(select * from tempdb..sysobjects ...
- 通过DBCC Page查看在SQL Server中哪行数据被锁住了?
原文:通过DBCC Page查看在SQL Server中哪行数据被锁住了? 如何查看被锁的是哪行数据?通过dbcc page可以. 要想明白这个问题: 首先,需要模拟阻塞问题,这里直接模拟了阻塞问题的 ...
- .SQL Server中 image类型数据的比较
原文:.SQL Server中 image类型数据的比较 在SQL Server中如果你对text.ntext或者image数据类型的数据进行比较.将会提示:不能比较或排序 text.ntext 和 ...
- 转:Sql Server中清空所有数据表中的记录
如果要删除数据表中所有数据只要遍历一下数据库再删除就可以了,清除所有数据我们可以使用搜索出所有表名,构造为一条SQL语句进行清除了,这里我一一给各位同学介绍. 使用sql删除数据库中所有表是不难的 ...
- Sql Server中清空所有数据表中的记录
Sql Server中清空所有数据表中的记录 清空所有数据表中的记录: 代码如下:exec sp_msforeachtable @Command1 ='truncate table ?'删除所有数据 ...
- 删除sql server中重复的数据
原文:删除sql server中重复的数据 with list_numbers as( select Name, AuthorOrTime, Url, Price, EstimatePrice, Si ...
- 从TXT文本文档向Sql Server中批量导入数据
下面我们通过以下的简单的SQL语句即可实现数据的批量导入,代码如下: Bulk insert id From 'G:\文档\test.txt' With ( fieldterminator=',', ...
随机推荐
- 软件包管理(rpm&yum)
一.rpm包管理器 rpm是一个功能强大的包管理工具,可用于构建,安装,查询,验证,更新和卸载软件包. 用法: rpm [OPTION...] 配置文件: /var/lib/rpm/ 已安装rpm包的 ...
- C 语言实例 - 判断回文数
C 语言实例 - 判断回文数 判断一个数是否为回文数. 设n是一任意自然数.若将n的各位数字反向排列所得自然数n1与n相等,则称n为一回文数.例如,若n=,则称n为一回文数:但若n=,则n不是回文数 ...
- [USACO09OCT]热浪Heat Wave Dijkstra
题目描述 The good folks in Texas are having a heatwave this summer. Their Texas Longhorn cows make for g ...
- Java中23种设计模式--超快速入门及举例代码
在网上看了一些设计模式的文章后,感觉还是印象不太深刻,决定好好记录记录. 原文地址:http://blog.csdn.net/doymm2008/article/details/13288067 注: ...
- OpenStack Weekly Rank 2015.07.20
Module Reviews Drafted Blueprints Completed Blueprints Filed Bugs Resolved Bugs Cinder 8 1 3 9 10 Sw ...
- UVALive 4262——Trip Planning——————【Tarjan 求强连通分量个数】
Road Networks Time Limit:3000MS Memory Limit:0KB 64bit IO Format:%lld & %llu Submit Stat ...
- Android入门:Activity生命周期
一.Activity生命周期介绍 我们在学Java Web时会学到Servlet的生命周期,因此对生命周期的概念已经有一定了解,简单地说就是某个事物从出生到死亡的过程. Activity也存在声明周期 ...
- Don't let anyone tell you different.
Don't let anyone tell you different.不要让任何人否定你的与众不同.
- pure响应式布局
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...
- Eucalyptus4.0 管理页面介绍
桉树配置好之后,我们可以通过web方式登陆桉树管理页面,实现对实例的启动,新建.删除,以及相关的配置操作.这里我们使用的是内网地址:http://192.168.20.60:8888/, 用户名密码默 ...