首页 > SQL SERVER 获取表结构信息《转载》

SQL SERVER 获取表结构信息《转载》

获取表信息

                             
SELECT

     表名       
= case when a.colorder=1 then d.name else '' end,

     表说明     
= case when a.colorder=1 then isnull(f.value,'') else '' end,

     字段名     
= a.name,

     主键       
= case when exists(SELECT 1 FROM sysobjects where xtype='PK' and parent_obj=a.id and name in (

                     
SELECT name FROM sysindexes WHERE indid in(

                        
SELECT indid FROM sysindexkeys WHERE id = a.id AND colid=a.colid))) then '' else '' end,

     类型       
= b.name,

     占用字节数
= a.length,

     长度       
= COLUMNPROPERTY(a.id,a.name,'PRECISION'),

     默认值     
= isnull(e.text,''),

     字段说明   
= isnull(g.[value],'')

FROM

     syscolumns a

left join

     systypes b

on

     a.xusertype
=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

     sysproperties g

on

     a.id
=g.id and a.colid=g.smallid  

left join

     sysproperties f

on

     d.id
=f.id and f.smallid=0

where

     d.name
='LW_Equipment_Stock_List'    --如果只查询指定表,加上此条件





     获取表内所有字段

    
Select   Name   From SysColumns Where ID=OBJECT_ID('TableName') Order By ColID


下边是关于 Sysobjects的介绍



经常我们要查询表的索引,约束,相关性,触发器的属性,那么要知道sysobjects这个表的字段的意思,那么不管要查什么都没有问题!



Sysobjects:SQL-SERVER的每个数据库内都有此系统表,它存放该数据库内创建的所有对象,如约束、默认值、日志、规则、存储过程等,每个对象在表中占一行。以下是此系统表的字段名称和相关说明。

Name,id,xtype,uid,status:分别是对象名,对象ID,对象类型,所有者对象的用户ID,对象状态。

对象类型(xtype)。可以是下列对象类型中的一种:

C = CHECK 约束

D = 默认值或 DEFAULT 约束

F = FOREIGN KEY 约束

L = 日志

FN = 标量函数

IF = 内嵌表函数

P = 存储过程

PK = PRIMARY KEY 约束(类型是 K)

RF = 复制筛选存储过程

S = 系统表

TF = 表函数

TR = 触发器

U = 用户表

UQ = UNIQUE 约束(类型是 K)

V = 视图

X = 扩展存储过程

当xtype='U' and status>0代表是用户建立的表,对象名就是表名,对象ID就是表的ID值。

用: select * from misa.dbo.sysobjects where xtype='U' and status>0 就可以列出库misa中所有的用户建立的表名。



SELECT * FROM SYSOBJECTS WHERE PARENT_OBJ = OBJECT_ID( 'CS') AND XTYPE='TR'

列出表cs的所有属性,上面是trigger!

转载于:https://www.cnblogs.com/wengjinbao/archive/2009/08/09/1542097.html

更多相关:

  • 点云PCL免费知识星球,点云论文速读。文章:DSP-SLAM: Object Oriented SLAM with Deep Shape Priors作者:Jingwen Wang Martin Runz Lourdes Agapito编译:点云PCL代码:https://github.com/JingwenWang95/DSP-S...

  • RAM缓存 新RAM缓存算法(CLFUS) 新的RAM缓存使用的创意来自许多缓存替换策略和算法,包括LRU,LFU,CLOCK,GDFS及2Q,它被命名为时钟周期内最小频繁使用大小算法CLFUS(Clocked Least Frequently Used by Size)。它避开了任何专利算法,具有如下特性: 均衡最近性(Rec...

  • MP4 |视频:AVC,1280×720 30 fps |音频:AAC,48 KHz,2 Ch |时长:2h 12m 语言:英语+中英文字幕(根据原英文字幕机译更准确)|大小解压后:560M C4D是一个有抱负的运动图形艺术家和设计师的重要工具。借助C4D,您可以使用3D对象、动态效果和动画来增强运动图形、模型和可视化效果。本课...

  • 文章目录先说问题:再说解决尝试1:尝试2(该尝试建议先在自己环境搭配对应业务测试通过后再现场尝试): 感谢 学无止境996同学的陪伴和vigourtyy美丽女友的支持,直到这个解决问题的深夜 先说问题: ceph 12.2.1生产环境:3副本 tier + 3副本data 机房在拥有业务的情况下重启集群交换机,产生如下场景...

  • 这周主要学习了java中的类和对象的知识点,发现和C++中的类和对象极为相似,对于类和对象的概念理解起来也简单。同时在自学的过程中也把类的知识重新复习巩固了一下(如类的三大特征:继承,封装和多态,构造,成员对象的访问权限,构造,无参有参函数的调用等),同时也了解到一些新的概念,比如类对象创建和引用占据堆内存和栈内存,输出对象时默认调...

  • 分享SLAM包含了两个主要的任务:定位与构图,在移动机器人或者自动驾驶中,这是一个十分重要的问题:机器人要精确的移动,就必须要有一个环境的地图,那么要构建环境的地图就需要知道机器人的位置。本系列文章主要分成四个部分:在第一部分中,将介绍Lidar SLAM,包括Lidar传感器,开源Lidar SLAM系统,Lidar中的深度学习以...

  • 参观临时城市中心 想象一下新兴的后世界末日城市中心,这里有大量的临时住所、建筑群、小屋、道具和固定装置。用一系列非常详细的废弃街区快速构建您的场景,并用波纹铁、水箱、折叠椅和劣质电线进一步修饰它们。从足球场到摇摇欲坠的码头,每一个摇摇欲坠的单元都制作独特,可以无限定制。 大小解压后:4.29G 格式:FBX 含贴图素材 模型...

  • 6、TEXT PROCESSING SERVICES :文本处理服务 6.1、re 8、DATA TYPES : 数据类型 8.1、datetime 8.2、collections 8.3、copy 9、 NUMERIC AND MATHEMATICAL MODULES : 数字和数学模块 9.1、random 10、FUNCTIO...

  • Start the computer and start pressing F1 and get into set up. In setup press F9 for default settings and press F10 for svae and exit. Problem solved. 转载于:https://www...

  • 响应式布局简明示例,响应式布局最好同时也是自适应布局,然后再配合css3媒体查询,来达到完美的响应式布局。css3的媒体查询ie9一下是不支持的,这太遗憾了,不过幸运的是有大神已经为前端屌丝们写好了用于IE9以下的媒体查询脚本文件,引用方式如下: