• Imprimir

SCRIPT QUE PERMITE LIMITAR A QUANTIDADE DE REGISTRO EM TABELA.

Vale a pena lembra que de posse deste script ele pode vira :

Um job e ser rodado de quando em quando, podendo exceder quantidade de registro durante um tempo. <<< Ser não for problemático acho o melhor >>

Ou ser criado uma trigger que fique analisando a quantidade de registro para dispara o mecanismo com lembro que isso representa mais uma condição para realizar a gravação.

 

La vai o script.

 

 

use <<SEU BANCO>>

-- Declare a variavel que sera usada.

DECLARE @quant_no_banco int;

DECLARE @quant_deletar int;

DECLARE @max_registro int;

-- Inicie a variavel que sera usada.

SET @quant_no_banco = 0;

SET @quant_deletar = 0;

SET @max_registro = 40000; -- quantidade maxima desejada que fique no banco 

-- Processa as quantidades 

SET @quant_no_banco = ((SELECT COUNT(*) FROM << SUA TABELA DO BANCO >>))

IF @quant_no_banco > @max_registro

BEGIN

SET @quant_deletar=@quant_no_banco-@max_registro;

 /*

Print 'Quantidade atual no banco   '+cast(@quant_no_banco as varchar(12) );

Print 'Quantidade Maxima desejada  '+cast(@max_registro   as varchar(12) );

print 'Quantidade a ser Deletada   '+cast(@quant_deletar  as varchar(12) );

  */

 

-- Pulo do gato 

  DELETE FROM  << SUA TABELA DO BANCO >> 

  WHERE << CAMPO DE PREFERENCIA ID DA TABELA >> IN (SELECT TOP (@quant_deletar) << CAMPO DE PREFERENCIA ID DA TABELA >>

  FROM << SUA TABELA DO BANCO >>  );  

    

END