理解SQL Server系统表sysobjects

关于SQL Server数据库的一切信息都保存在它的系统表格里。 Sysobjects:SQL-SERVER的每个数据库内都有此系统表,它存放该数据库内创建的所有对象,如约束、默认值、日志、规则、存储过程等,每个对象在表中占一行。以下是此系统表的字段名称和相关说明。 Name,id,xtype,uid,status:分别是对象名,对象ID,对象类型,所有者对象的用户ID,对象状态。 在大多数情况下,对你最有用的两个列是sysobjects.name和sysobjects.xtype。前面一个用来列出待考察对象的名字,而后一个用来定义对象的类型,其代码如下: C:检查约束。 D:默认的约束 F:外键约束 L:日志 P:存储过程 PK:主键约束 RF:复制过滤存储过程 S:系统表格 TR:触发器 U:用于表格。 UQ:独特的约束。 V:视图 X:被扩展的存储过程 当xtype='U' and status>0代表是用户建立的表,对象名就是表名,对象ID就是表的ID值。 例: 存储过程: go if object_id(存储过程名称(例:'PXXXX'),'p') is not null drop proc 存储过程名称 cret proc 存储过程名称 。。。 函数: go if object_id('FXXX','FN') is not null drop function 函数名称 create function 函数名称 ... 视图: go if object_id('VXXXX','V') is not null drop view 视图名称 create view 视图名称 ......
posted @ 2010-07-22 10:40  as|as  阅读(365)  评论(1编辑  收藏  举报