StoredProc para Gerar Código Válido

Firebird

01/09/2003

Preciso de uma StoredProc para gerar um código válido, que seria o código do último produto + 1;
Como usá-la no delphi???
Eu teria que criar um StP para cada tabela ou tem como criar uma que possa ser usada em qualquer tabela.
T+


Eniorm

Eniorm

Curtidas 0

Respostas

Afarias

Afarias

01/09/2003

se vc pretente criar uma aplicação C/S para múltiplos usuários em rede então DESISTA. Este procedimento NÃO se aplica a este tipo de aplicações.

Use GENERATORS para gerar códigos sequenciais neste tipo de aplicação.


T+


GOSTEI 0
Eniorm

Eniorm

01/09/2003

se vc pretente criar uma aplicação C/S para múltiplos usuários em rede então DESISTA. Este procedimento NÃO se aplica a este tipo de aplicações. Use GENERATORS para gerar códigos sequenciais neste tipo de aplicação. T+


O sistema vai ser usado em rede sim!
Mas a StP retornaria o último cód + 1
apenas qdo fosse necessário.
T+


GOSTEI 0
Afarias

Afarias

01/09/2003

vc pode usar ::


SELECT MAX(codigo) FROM TABELA


para obter o último código,
Entretanto, vou advertir mais uma vêz :: se seu sistema for multi-usuário vc provavelmente terá problemas.


T+


GOSTEI 0
Eniorm

Eniorm

01/09/2003

OK entaum o q vc me sugere, pois meu sistema
vai rodar em rede sim.
Existe algo a mais para se configurar para o sistema
rodar em rede ou apenas setar o ip e local do gdb ??
T+


GOSTEI 0
Afarias

Afarias

01/09/2003

No que diz respeito a gerar codigos sequenciais, a unica forma segura (e correta) para aplicacoes muiti-usuario com IB e usando GENERATORS.

Crie generators para cada campo codigo sequencial q vc vai ter no seu banco (de uma lida sobre generators no SQL Reference Help). Para cria-los basta::

create generator nome_generator;

A forma mais facil de usa-los e com a propriedade GENERATORFIELD nos componentes TIBQuery e TIBDataSet (IBX)

mas, vc pode pegar um novo codigo sequencial a qualquer momento, usando um SQL da forma::

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


T+


GOSTEI 0
POSTAR