SQLServer中用T—SQL命令查询一个数据库中有哪些表的sql语句
程序员文章站
2024-02-11 12:53:46
1、查询sql中的所有表: select table_name from 数据库名称.information_schema.tables where table_type=...
1、查询sql中的所有表:
select table_name from 数据库名称.information_schema.tables where table_type='base table' 执行之后,就可以看到数据库中所有属于自己建的表的名称
2、查询sql中所有表及列:
select dbo.sysobjects.name as table_name, dbo.syscolumns.name as column_name from dbo.syscolumns inner join dbo.sysobjects on dbo.syscolumns.id = dbo.sysobjects.id where (dbo.sysobjects.xtype = 'u') and (not (dbo.sysobjects.name like 'dtproperties'))
3、在sql查询分析器,还有一个简单的查询方法:
exec sp_msforeachtable @command1="sp_spaceused '?'" 执行完之后,就可以看到数据库中所有用户表的信息
4、查询总存储过程数:
select count(*) 总存储过程数 from sysobjects where xtype='p'
d = 默认值或 default 约束
f = foreign key 约束
l = 日志
fn = 标量函数
if = 内嵌表函数
p = 存储过程
pk = primary key 约束(类型是 k)
rf = 复制筛选存储过程
s = 系统表
tf = 表函数
tr = 触发器
u = 用户表
uq = unique 约束(类型是 k)
v = 视图
x = 扩展存储过程
select table_name from 数据库名称.information_schema.tables where table_type='base table' 执行之后,就可以看到数据库中所有属于自己建的表的名称
2、查询sql中所有表及列:
select dbo.sysobjects.name as table_name, dbo.syscolumns.name as column_name from dbo.syscolumns inner join dbo.sysobjects on dbo.syscolumns.id = dbo.sysobjects.id where (dbo.sysobjects.xtype = 'u') and (not (dbo.sysobjects.name like 'dtproperties'))
3、在sql查询分析器,还有一个简单的查询方法:
exec sp_msforeachtable @command1="sp_spaceused '?'" 执行完之后,就可以看到数据库中所有用户表的信息
4、查询总存储过程数:
select count(*) 总存储过程数 from sysobjects where xtype='p'
d = 默认值或 default 约束
f = foreign key 约束
l = 日志
fn = 标量函数
if = 内嵌表函数
p = 存储过程
pk = primary key 约束(类型是 k)
rf = 复制筛选存储过程
s = 系统表
tf = 表函数
tr = 触发器
u = 用户表
uq = unique 约束(类型是 k)
v = 视图
x = 扩展存储过程