监控数据库表变化

CREATE PROCEDURE  usr_run_1 AS
declare @name  varchar(50)
declare @id  int
declare @count int
declare @sql nvarchar(255)
select id,name  into #tmp20140215  from sysobjects where type='u' order by name
select @count=count(*) from #tmp20140215
print cast (@count as varchar(10))
while exists(select * from #tmp20140215)
begin
         select @id=id,@name=name from #tmp20140215
      --   usr_run_2 @name, @count output
         set @sql='use ais20140121142916 select @count=count(*) from ' +@name
          exec master.dbo.sp_executesql @sql,N'@count int output',@count output
          insert into a99 (tab_name,first_run) values (@name,@count)
         
         delete from #tmp20140215 where id=@id
         
end


select @count=count(*) from a99

print cast (@count as varchar(10))


CREATE PROCEDURE usr_run_2 AS


declare @name  varchar(50)
declare @id  int
declare @count int
declare @sql nvarchar(255)
select id,name  into #tmp201402151  from sysobjects where type='u' order by name
while exists(select * from #tmp201402151)
begin
         select @id=id,@name=name from #tmp201402151
      --   usr_run_2 @name, @count output
         set @sql='use ais20140121142916 select @count=count(*) from ' +@name
          exec master.dbo.sp_executesql @sql,N'@count int output',@count output
         -- insert into a99 (tab_name,first_run) values (@name,@count)
          update a99 set second_run=@count where tab_name=@name
         
         delete from #tmp201402151 where id=@id
         
end


数据名叫 ais201401211429,创建了一个表a99   字段 tab_name,first_run,second_run

先运行 usr_run_1,然后添加一条记录,再运行usr_run_2

就\在a99中就可以看到先后的不同

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值