sql 系统表介绍
介绍一下sql server数据库中的系统表sysobjects。在每个数据库中都存在此表。
sysobjects存放着数据库中的所有对象,如表,列,索引等等。
字段xtype代表对象类型,u代表用户表,p代表存储过程,tr代表触发器。
name字段表示对象名称。
以用友数据库为例
use ufdata_888_2004
查询数据库ufdata_888_2004的用户表
select * from sysobjects
where xtype = 'u' and name like 'fa_%'
order by name
查询数据库ufdata_888_2004的存储过程
select * from sysobjects
where xtype = 'p' and name like 'fa_%'
order by name
查询数据库ufdata_888_2004的触发器
select * from sysobjects
where xtype = 'tr' and name like 'sa_%'
order by name
介绍一下sql server数据库中的系统表:Syscolumns,在每个数据库中都存在此表。
name:名称
id:该列所属的表对象 ID,或与该参数关联的存储过程 ID
select * from Syscolumns
syscolumns和sysobjects连用:
select col.name,obj.name
from syscolumns col join sysobjects obj on col.id = obj.id
where obj.xtype = 'u' and obj.name like 'sa_%'
order by col.name
表syscolumns和systypes连用
select sysobjects.name,systypes.name from syscolumns inner join systypes on syscolumns.type = systypes.type
inner join sysobjects on syscolumns.id = sysobjects.id
where systypes.name = 'datetime' and sysobjects.xtype = 'u' and sysobjects.name like 'sa%'