Fórum Auto incremento utilizando interbase 6.5 #42030

02/02/2004

0

Por favor qual a maneira mais facil de criar um campo autoincremento utilizando o interbase 6.5. Se possivel passo a passo, pois estou começando agora a utiliza-lo. Obrigado!


Cláudiogyn

Cláudiogyn

Responder

Posts

02/02/2004

Anorex

utilize generators junto com triggers.... é o meu método preferido...


Responder

Gostei + 0

02/02/2004

Cláudiogyn

Pode me dizer passo a passo como faço isso. Obrigado


Responder

Gostei + 0

02/02/2004

Eduardo Pereira

No site www.firebase.com.br tem um artigo chamado ´Recuperando o valor de um Generator através de Stored Procedures´, que pode lhe ser útil. Observe que a abordagem utilizada é diferente da proposta pelo Anorex, que usa trigger.


Responder

Gostei + 0

03/02/2004

Afarias

Vc provavelmente vai se enrrolar usando esse método das TRIGGERS e provavelmente não terá o resultado esperado.

(Faça uma consulta nos postes deste fórum sobre generators e vc verá muito sobre o assunto)

Se vc usa IBX, apenas configure a propriedade GeneratorField dos componentes IBQuery ou IBDataSet

outra forma de gerar números sequenciais na aplicação cliente é usando um código como::


function GerarNovoCodigo(NomeGenerator: string): Integer;
const
  ComandoSQL = ´select gen_id(¬s, 1) from rdb$database´;
begin
  with IBSQL1 do
  begin
    Transaction.StartTransaction;
    try
      SQL.Text := Format(ComandoSQL, [NomeGenerator]);
      ExecQuery;
      Result := Fields[0].AsInteger;
    finally
      Transaction.Commit;    
    end;
end;






T+


Responder

Gostei + 0

16/02/2004

Cláudiogyn

Agora quando vou setar o generator field ele da a seguinte mensagem empty sql statement. O que fazer????


Responder

Gostei + 0

16/02/2004

Afarias

|O que fazer????

Preencher corretamente a propriedade SQL (ou SelectSQL)



T+


Responder

Gostei + 0

16/02/2004

Cláudiogyn

agora configurei ai ficou assim o dbnavigator ele so aparece a seta > >> enable o resto fica desativado e não tem como inserir um novo registro o que fazer? Outra duvida eu utilizo o dataset e o ibtable ou só o datasete. Como o ibtable foi tudo ok mas eu gostaria de criar o campo autoincremento e a opção generator field so tem no dataset mas no data set está acontecendo este problema como resolver???


Responder

Gostei + 0

16/02/2004

Afarias

|agora configurei ai ficou assim o dbnavigator ele so aparece a seta > >>
|enable o resto fica desativado e não tem como inserir um novo registro

O q tem a ver uma coisa com a outra??


|o que fazer?

Leia uma apostila básica sobre programação com IBX -- se vc ler o tópico no topo deste fórum (exemplo básico com IBX) já é uma bom começo


|Outra duvida eu utilizo o dataset e o ibtable ou só o datasete.

Nunca use IBTable. Só IBQuery ou IBDataSet (como DataSet)


|Como o ibtable foi tudo ok mas eu gostaria de criar o campo
|autoincremento e a opção generator field so tem no dataset mas no data
|set está acontecendo este problema como resolver???

Leia o tópico ´exemplo básico com IBX´ ok??


T+


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar