天天看点

数据库中会经常用到的系统表

1.sysobjects

  在数据库中创建的每个对象(例如约束、默认值、日志、规则以及存储过程)都对应一行。

  常规用法:select * from sysobjects where id= object_id('TableName') and type = 'U' 查找表TableName的信息

  更多参考http://msdn.microsoft.com/zh-cn/library/ms177596.aspx

2.syscolumns

  为每个表和视图中的每列返回一行,并为数据库中的存储过程的每个参数返回一行。

  常规用法:select * from syscolumns where id = object_id('TableName') 查找表TableName的列信息

  更多参考http://msdn.microsoft.com/zh-cn/library/ms186816.aspx

3.systypes

  为数据库中定义的每种系统提供的数据类型和每种用户定义的数据类型返回一行。

  常规用法:select * from SysTypes where xtype = 167 查找某个列的数据类型

  更多参考http://msdn.microsoft.com/zh-cn/library/ms175109.aspx

对于用户数和角色数超过32767,用上面3个表可能会造成溢出或返回null,为了避免可以参考http://msdn.microsoft.com/zh-cn/library/ms187376.aspx

C:检查约束。

D:默认的约束

F:外键约束

L:日志

P:存储过程

PK:主键约束

RF:复制过滤存储过程

S:系统表格

TR:触发器

U:用于表格。

UQ:独特的约束。

V:视图

X:被扩展的存储过程