如何遍历某个数据库中所有有记录的表?

declare @row varchar(30)
declare @tbname varchar(30)
  DECLARE   string_find_cursor   CURSOR   FAST_FORWARD   FOR    
  SELECT   [name]  
  FROM   sysobjects   where   type='U' and name like 'A%'
  ORDER   BY   [name]  

   OPEN   string_find_cursor  
 
  FETCH   NEXT   FROM   string_find_cursor    
  INTO   @tbname  

WHILE   @@FETCH_STATUS   =   0  
  BEGIN  
   --select  @row=count(*) from  @tbname
  select @row=rows from sysindexes where id = object_id(cast(@tbname as varchar(30))) and indid in (0,1)
if(cast(@row as int))>0
  print @tbname+'  '+@row+'  '+'select * from '+@tbname
  FETCH   NEXT   FROM   string_find_cursor    
  INTO   @tbname  
  END    
   
  CLOSE   string_find_cursor  
  DEALLOCATE   string_find_cursor

转载于:https://www.cnblogs.com/ringnet/archive/2007/05/22/755375.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值