怎么查询数据库中哪些表中有数据
2个回答
展开全部
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 = 扩展存储过程
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
美林数据技术股份有限公司
2019-06-26 广告
2019-06-26 广告
美林数据Tempo大数据分析平台,它是一款集数据接入、数据处理、数据挖掘、数据可视化、数据应用于一体的软件产品。它秉持“智能、互动、增值”的设计理念,面向企业级用户提供自助式数据探索与分析能力,为企业提供从BI到AI的一体化数据分析与应用解...
点击进入详情页
本回答由美林数据技术股份有限公司提供
2022-04-11
展开全部
下面查询出来的这些都是有数据的表,没数据的不列出
查询列出有数据的表
CREATE TABLE #temp
(
TableName NVARCHAR (128), /*表明称*/
RowsCnt VARCHAR (11), /*数据的行数*/
ReservedSpace VARCHAR(18), /*预留空间*/
DataSpace VARCHAR(18), /*数据空间*/
CombinedIndexSpace VARCHAR(18), /**/
UnusedSpace VARCHAR(18) /*没用空间*/
)
EXEC
sp_MSforeachtable'INSERT INTO #temp (TableName, RowsCnt,
ReservedSpace,DataSpace, CombinedIndexSpace, UnusedSpace) EXEC
sp_spaceused ''?'', FALSE'
SELECT TableName, RowsCnt,ReservedSpace, DataSpace, CombinedIndexSpace, UnusedSpace
FROM #temp where RowsCnt<>0
ORDER BY TableName
查询列出有数据的表
CREATE TABLE #temp
(
TableName NVARCHAR (128), /*表明称*/
RowsCnt VARCHAR (11), /*数据的行数*/
ReservedSpace VARCHAR(18), /*预留空间*/
DataSpace VARCHAR(18), /*数据空间*/
CombinedIndexSpace VARCHAR(18), /**/
UnusedSpace VARCHAR(18) /*没用空间*/
)
EXEC
sp_MSforeachtable'INSERT INTO #temp (TableName, RowsCnt,
ReservedSpace,DataSpace, CombinedIndexSpace, UnusedSpace) EXEC
sp_spaceused ''?'', FALSE'
SELECT TableName, RowsCnt,ReservedSpace, DataSpace, CombinedIndexSpace, UnusedSpace
FROM #temp where RowsCnt<>0
ORDER BY TableName
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询