数据库
首页 > 数据库> > SQL经验分享(二)取得数据库中所有的表名、字段名以及字段属于哪个表

SQL经验分享(二)取得数据库中所有的表名、字段名以及字段属于哪个表

作者:互联网

2.1取得数据库中所有表名

样例数据:

SQL经验分享(二)取得数据库中所有的表名、字段名以及字段属于哪个表
语句:

select t.name '表名' from sysobjects t where OBJECTPROPERTY(t.id, N'IsUserTable') = 1

或者用select name from sysobjects where type='U'

执行结果:

SQL经验分享(二)取得数据库中所有的表名、字段名以及字段属于哪个表

2.2 取得所有表中的所有字段名

语句:

select distinct c.name '字段名'  from sysobjects t, syscolumns c
where t.id = c.id   and  OBJECTPROPERTY(t.id, N'IsUserTable') = 1

执行结果:

SQL经验分享(二)取得数据库中所有的表名、字段名以及字段属于哪个表
注:字段较多,后面略

 

2.3查所有表和字段

语句:select t.name '表名' ,c.name '字段名'  from sysobjects t, syscolumns c
where t.id = c.id   and  OBJECTPROPERTY(t.id, N'IsUserTable') = 1  group by t.name,c.name

执行结果:

SQL经验分享(二)取得数据库中所有的表名、字段名以及字段属于哪个表
注:字段较多,后面略

 

2.4查某个表的所有字段

Table_1原始数据:

SQL经验分享(二)取得数据库中所有的表名、字段名以及字段属于哪个表
语句:
select t.name,c.name '字段名'  from sysobjects t, syscolumns c
where t.id = c.id   and  OBJECTPROPERTY(t.id, N'IsUserTable') = 1
and  t.name='Table_1'

执行结果:

SQL经验分享(二)取得数据库中所有的表名、字段名以及字段属于哪个表


 

2.5查字段属于哪个表(即找含有相同字段的表)

查询姓名列在哪些表中有

语句:

select distinct t.name from sysobjects t, syscolumns c
where t.id = c.id   and  OBJECTPROPERTY(t.id, N'IsUserTable') = 1
and c.name in ('姓名')

执行结果:

SQL经验分享(二)取得数据库中所有的表名、字段名以及字段属于哪个表

转载于:https://www.cnblogs.com/zhangchenliang/archive/2011/05/29/2062040.html

标签:IsUserTable,name,SQL,字段名,表名,where,id,select,sysobjects
来源: https://blog.csdn.net/weixin_33709609/article/details/93496117