[firebase-br] GEN_ID TRIGER & Valores por Defeito
Mário Reis
secretariadogeral em acra.pt
Sáb Jan 20 15:55:33 -03 2007
Olá pessoal,
Cá estou eu de novo. Desta vez por causa do comportamento do D7 + Firebird +
DbExpress. Mas crei que o mm vale para qq outro modo de aceder à base de
dados:
É assim: tenho este campo NOT NULL Primary_KEY C/autoiincremento triger
/GEN_ID(<qq_coisa,>,1 ). Porém quando estou a inserir dados sou obrigado a
fornecer
o valor deste campo do lado do Cliente D7 o mesmo se passando com os campos
com valor por defeito. Isto é, o servidor não me fornece esses dados quando
tinha toda a vantagem nisso.
Obriga-me a chamar via SQLQuery a função Gen_ID(????) e a SQLStoredProcedure
para assignar os valores do lado do cliente e envia-los ao servidor.
Isto é mesmo assim ou estou errado? Como se pode ustrapassar isto.
Então não era muito mais fácil enviar do lado do cliente apenas os
dados/valores do meu input enquanto o servidor se encarregaria de fornecer o
Autoincremento e os valores por defeito?
Cheguei inclusivé a alterar a minha triger para caso o valor fosse zero ter
o mm comportamento que o NULL mas nada feito, fica tudo na mesma.
Alguem pode explicar-me a vantagem destes campos se tenho de estar a invocár
a sua chamada do lado do cliente antes do triger disparar, particularmente
porque se trata de um triger "Before Insert"?
Depois se eu permitir que o cliente faça input do campo de autorincremento
ele não incrementa e a consistencia dos dados poderá ficar em causa. Certo?
Estarei enganado?
Obrigado
Mário
Mais detalhes sobre a lista de discussão lista