该怎么处理就怎么处理:)你可以通过子表将表细分
把数据量控制一下
还可以通过建索引等
加快查询速度当然,还可以通过TOP 
控制一次只读出一部分数据

解决方案 »

  1.   

    问题就是防火墙产生的记录表里面没有设主键,帮我看看如果用top怎么写,看看还有其他的方法吗?最好具体到sql语句上!
      

  2.   

    分批处理
    select top 1000 * into 临时表 from 表 
      

  3.   

    1000以内的可以这样处理,可是1000-2000,  2000-3000哪?这个通用sql语句怎么来写
      

  4.   

    你可以在你的防火墙产生的记录表里面加一个自增长的字段id,然后就可以随意取多少行来处理了。如
    select * from yourtable where id between 1000 and 2000
      

  5.   

    如果表里面的记录主要以入侵记录为主,可以这样操作:
    修改当前这个表名tablename-->anothername
    新增一个表tablename
    insert tablename select * from anothername where condition is true
      

  6.   

    使用临时表
    select identity(int,1,1) as ID,* 
    into #tmp
    from yourtable--numbera,numberb 可以任意设定为某一区间
    select * from #tmp where id between numbera and numberbdrop table #tmp
      

  7.   

    可以加一个自增字段再处理。alter table 表名 add id int identity(1,1)