SQL Server中Table字典数据查询SQL的示例分析
这篇文章主要介绍SQL Server中Table字典数据查询SQL的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
前言
在数据库系统原理与设计(第3版)教科书中这样写道:
数据库包含4类数据:
1.用户数据
2.元数据
3.索引
4.应用元数据
其中,元数据也叫数据字典,定义如下:
下面这篇文章就来给大家分享一个关于查询SQL Server Table 结构的SQL 语句。
T-SQL 如下:
SELECT(casewhena.colorder=1thend.nameelse''end)表名,a.colorder字段序号,a.name字段名,(casewhena.colorder=1thenisnull(f.value,'')else''end)表说明,(casewhenCOLUMNPROPERTY(a.id,a.name,'IsIdentity')=1then'1'else'0'end)标识,(casewhen(SELECTcount(*)FROMsysobjectsWHERE(namein(SELECTnameFROMsysindexesWHERE(id=a.id)AND(indidin(SELECTindidFROMsysindexkeysWHERE(id=a.id)AND(colidin(SELECTcolidFROMsyscolumnsWHERE(id=a.id)AND(name=a.name)))))))AND(xtype='PK'))>0then'1'else'0'end)主键,b.name类型,a.length占用字节数,COLUMNPROPERTY(a.id,a.name,'PRECISION')as长度,isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0)as小数位数,(casewhena.isnullable=1then'1'else'0'end)允许空,isnull(e.text,'')默认值,isnull(g.[value],'')AS[说明]FROMsyscolumnsaleftjoinsystypesbona.xtype=b.xusertypeinnerjoinsysobjectsdona.id=d.idandd.xtype='U'andd.name<>'dtproperties'leftjoinsyscommentseona.cdefault=e.idleftjoinsys.extended_propertiesgona.id=g.major_idANDa.colid=g.minor_idleftjoinsys.extended_propertiesfond.id=f.major_idandf.minor_id=0--whereb.nameisnotnullWHEREd.name='DBA_Server'--如果只查询指定表,加上此条件,此案例为表DBA_Serverorderbya.id,a.colorder
查询出的结果如下:
以上是“SQL Server中Table字典数据查询SQL的示例分析”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。