Auto incremento no Interbase...

Firebird

18/08/2003

8) alguém pode me ensinar como fazer auto-incremento no interbase...
me parece que tem quem usar triggers...
Agradeço a ajuda 8)


Delphox

Delphox

Curtidas 0

Respostas

Fbsouza

Fbsouza

18/08/2003

Primeiro vc deve criar um generator olhe o SQL Reference help, vem com o IB, para ver como criar.

Um exemplo de como fazer a Trigger.

set term ^;
CREATE TRIGGER "VEICULO_ATUAL_AUTONUM" FOR "VEICULO_ATUAL" 
ACTIVE BEFORE INSERT POSITION 0
as
begin
  new.cod_veiculo_atual=gen_id(veiculo_atual_id,1);
end
 ^



GOSTEI 0
Afarias

Afarias

18/08/2003

Usar triggers em geral não é uma solução boa pois para saber o código, o Cliente tem q executar a query novamente.

Se vc usa IBX a melhor solução (mais fácil) é usar a propriedade GENERATORFIELD do IBQuery ou IBDataSet. Se nào usa IBX, utilize um evento qualquer (tipo before post ou onnewrecord) para pegar um novo código com o SQL abaixo:

select gen_id(nome_generator, 1) from rdb$database;


T+


GOSTEI 0
POSTAR