执行:
backup log tempdb with no_log
看看是否有效.你的tempdb的空间不够.
既然你要经常从临时表走这幺多数据并且多用户并发,
那幺你至少应该给其数据空间分配50M~100M而且由于tempdb存放临时表,而临时表经常要做出大量的增删.
因此,最好让其不写日志,否则日志文件的增长是可怕的.
所以执行下面的语句:
exec sp_dboption tempdb,’ trunc. log on chkpt.’,true;不要对频繁插入和删除数据的临时表加上主键或者索引!
因为索引的存在会加快检索的速度,但同样会降低插入和删除数据的速度,因为每一次的插入或删除会让表进行索引重排.

解决方案 »

  1.   

    原因:1、记录多
         2、TEMPDB空间少。
    解决方法:
       1、如果一定要一次查询这么多记录,只有增加TEMPDB的空间,在企业管理器里服务器的选项TEMPDB IN RAM(MB)改大一些,但要注意你的服务器内存允不允许你改大,你要好好计算一下。
       2、这个功能不要用临时表,改用永久表代替。
      

  2.   

    这样试试:
    1。增加TEMPDB的大小
    2。dbcc checkdb
    3. dump transaction no_log