- 论坛徽章:
- 0
|
目的:要把所有表中的记录进行统计,并把统计结果存放到表:tbl_all中去。
本人用下面方法。循环里面有二种办法(带下划线的),但都出现错误:
delcare tbl_cur cursor for select name from sysobjects
go
declare @tbl_name char(30), @ssql char(100), @row_cnt int
open tbl_cur
fetch tbl_cur into @tbl_name
while @@sqlstatus=0
begin
select @row_cnt=count(*) from @tbl_name /*这第一种方法错误,大概表名不能是变量的*/
select @ssql='select @row_cnt=count(*) from @tbl_name'
exec (@ssql) /*这第二种方法也错误,提示变量@row_cnt未定义*/
insert into tbl_all (tblname,rowcount) values (@tbl_name,@row_cnt)
fetch tbl_cur into @tbl_name
end
close tbl_cur
deallocate cursor tbl_cur
go
请问谁能帮我解决这个办法。谢谢! |
|