| 
 | 
 
例子: 
SELECT * FROM sysobjects WHERE name = '视图名子' and xtype='V' 
 
/*   
sysObjects (    
Name sysname,      --object 名称    
id   int,          --object id    
xtype char(2),     -- object 类型      
type char(2),     -- Object 类型(与xtype 似乎一模一样? 有点郁闷…)    
uid   smallint,     -- object 所有者的ID    
...                --其他的字段不常用到。      
)   
  
sysobjects的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 = 扩展存储过程   
  
object_id和data_object_id都是表示数据库对象的唯一标志。   
  
object_id是数据库对象的逻辑id,data_object_id是数据库对象的物理id。   
  
如果一些object没有物理属性的话那它就不存在data_object_id,例如procedure,function,package,data type,db link,mv定义,view定义,临时表,分区表定义等等这些object都是没有对应着某个segment,因此它们的data_object_id 都为空。   
  
当一个表建立的时候,他的object_id 和 data_object_id是相等的。当表move和truncate后data_object_id会发生变化。修改表结构不会更改。 
 
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/dx_dengxiang/archive/2010/07/27/5768082.aspx |   
 
 
 
 |