gpt4 book ai didi

sql - 在游标中执行存储过程

转载 作者:行者123 更新时间:2023-12-01 07:22:06 26 4
gpt4 key购买 nike

我需要为我的数据库中的所有表执行存储过程 sp_spaceused。
我为此使用了游标,请找到以下查询。问题是我需要在单个结果集中生成报告。
对于下面的查询,我得到了不同的结果。

Declare @Name Varchar(500)
Declare @GetName Cursor
Set @Getname = Cursor for
select name from sys.tables
Open @Getname
Fetch Next From @Getname into @Name
While @@Fetch_Status=0
Begin
exec sp_spaceused @Name
Fetch Next From @Getname into @Name
End
Close @GetName
Deallocate @GetName

最佳答案

您可以使用如下所示的内容(数据类型可能需要调整)。

编辑:请参阅 Joe 的回答以了解要使用的正确数据类型!

create table #t
(
name sysname,
rows bigint,
reserved varchar(50),
data varchar(50),
index_size varchar(50),
unused varchar(50)
)

EXEC sp_MSForEachtable 'insert into #t EXEC sp_spaceused ''?'''

select name,rows,reserved,data,index_size,unused
from #t

关于sql - 在游标中执行存储过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3711197/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com