Campo Autoincremento
Bom Dia
Estou usando o Delphi 7 com o Banco de Dados Fire Bird 2.0 + Ibexpert para criar as tabelas etc . . .
Criei uma tabela para realizar uns testes de como criar um campo autoincremento ´sequencial´ segue abaixo os campos
TBCLIENTE
COD_ID >PK
NOME > VARCHAR
O campo cod_id no ibexpert eu defini como pk e autoincremento
No form eu tenho um botão gravar , como fica o código do botão gravar para criar o sequencial do campo cod_id.
Desde já agradeço pela atenção de todos.
Estou usando o Delphi 7 com o Banco de Dados Fire Bird 2.0 + Ibexpert para criar as tabelas etc . . .
Criei uma tabela para realizar uns testes de como criar um campo autoincremento ´sequencial´ segue abaixo os campos
TBCLIENTE
COD_ID >PK
NOME > VARCHAR
O campo cod_id no ibexpert eu defini como pk e autoincremento
No form eu tenho um botão gravar , como fica o código do botão gravar para criar o sequencial do campo cod_id.
Desde já agradeço pela atenção de todos.
Help Desk1
Curtidas 0
Respostas
Joaoshi
08/02/2008
Colega, você precisa dar uma pesquisada sobre [b:d42dc2eef7]GENERATORS[/b:d42dc2eef7]
GOSTEI 0
Ferreia2
08/02/2008
Eu sempre utilizo campo autoincremento com Generator e Trigger
[b:2f88d8ab58]Criar Generator:[/b:2f88d8ab58]
Create Generator IDCliente
[b:2f88d8ab58]Criar a Trigger[/b:2f88d8ab58]
SET TERM ^ ;
/* Triggers only will work for SQL triggers */
CREATE TRIGGER ´SET_COD_ID´ FOR ´TBCLIENTE´
ACTIVE BEFORE INSERT POSITION 0
as
begin
if (new.COD_ID is null) then
new.COD_ID = gen_id( IDCLIENTE, 1 );
END
^
COMMIT WORK ^
SET TERM ;^
No Componente de acesso a tabela:
Tem uma propriedade GeneratorField, seta esta propriedade com o generator criado e seleciona qual evento vc quer que seja gerado o ID.
[b:2f88d8ab58]Criar Generator:[/b:2f88d8ab58]
Create Generator IDCliente
[b:2f88d8ab58]Criar a Trigger[/b:2f88d8ab58]
SET TERM ^ ;
/* Triggers only will work for SQL triggers */
CREATE TRIGGER ´SET_COD_ID´ FOR ´TBCLIENTE´
ACTIVE BEFORE INSERT POSITION 0
as
begin
if (new.COD_ID is null) then
new.COD_ID = gen_id( IDCLIENTE, 1 );
END
^
COMMIT WORK ^
SET TERM ;^
No Componente de acesso a tabela:
Tem uma propriedade GeneratorField, seta esta propriedade com o generator criado e seleciona qual evento vc quer que seja gerado o ID.
GOSTEI 0
Paullsoftware
08/02/2008
da uma olhada nesse artigo e vê se ele te ajuda :wink:
:arrow: [url=https://www.devmedia.com.br/articles/viewcomp.asp?comp=2233&hl=]Campo Auto-incremento Firebird/Interbase[/url]
:arrow: [url=https://www.devmedia.com.br/articles/viewcomp.asp?comp=4103&hl=]Aqui também tem outro artigo[/url]
[url=http://forum.devmedia.com.br/viewtopic.php?t=90997]Aqui é um tótipo que encontrei pesquisando por AUTOINCREMENTO[/url]
seria legal usar a ferramenta de busca do forum antes de postar novos tópicos :wink:
:arrow: [url=https://www.devmedia.com.br/articles/viewcomp.asp?comp=2233&hl=]Campo Auto-incremento Firebird/Interbase[/url]
:arrow: [url=https://www.devmedia.com.br/articles/viewcomp.asp?comp=4103&hl=]Aqui também tem outro artigo[/url]
[url=http://forum.devmedia.com.br/viewtopic.php?t=90997]Aqui é um tótipo que encontrei pesquisando por AUTOINCREMENTO[/url]
seria legal usar a ferramenta de busca do forum antes de postar novos tópicos :wink:
GOSTEI 0