问一个思路问题,执行一个存储过程,得到的影响的行数,如果每次都要查询这个庞大的数很费CPU的,如果缓存这个行数是否合理呢?可以定时清这个缓存变量再写入

解决方案 »

  1.   

    最后一条语句影响的行数可用@@ROWCOUNT得到,如下次要用可保存之
      

  2.   

    select @@ROWCOUNT
    @@ROWCOUNT
    返回受上一语句影响的行数。语法
    @@ROWCOUNT返回类型
    integer注释
    任何不返回行的语句将这一变量设置为 0 ,如 IF 语句。示例
    下面的示例执行 UPDATE 语句并用 @@ROWCOUNT 来检测是否有发生更改的行。UPDATE authors SET au_lname = 'Jones'
    WHERE au_id = '999-888-7777'
    IF @@ROWCOUNT = 0
       print 'Warning: No rows were updated'
      

  3.   

    不好意思,说错了,是Count(*)总记录数,是否应该缓存这个值,或者存数据库,否则查询这个值就够久的了,谢谢各位