[firebase-br] GEN_ID TRIGER & Valores por Defeito

Mário Reis secretariadogeral em acra.pt
Dom Jan 21 11:05:16 -03 2007


Desculpe mas discordo, doutro modo usávamos as flat tables. Diz-me que há 
<muito deixou de usar o DbExpress e usa o quê  em vez dele?
Depois não é uma questão de recurso que com o query faço o mm acho é 
estupido ter de ser o cliente a provocar explicitamente o "disparo"
do triger qdo o Servidor deveria fazer isso para o cliente. Depois se estou 
bem lembrado testei isso no PosgresSql e funcionou não percebo
pq não funciona aqui?
Cumprimentos
Mário

"Jeferson Oliveira" 
<jefersonfoliveira em gmail.com> escreveu na 
mensagem news:aa2d50da0701210443m111ea809sf6b5c5b26cbbb67e em mail.gmail.com...
Mário Reis escreveu:
> Mas isso é perverter o que de bom existe nas bases de dados relacionais! O
> Delphi tem bugs corrijam-se os bugs Se fizermos todos pressão junto da
> Borland ela pela certa que os corrigirá.
> Não acham?

Se o desenvolvedor especifica na aplicação que o campo é de
preenchimento obrigatório, nada mais adequado do que a aplicação
alertar em caso de não preenchimento deste. A aplicação tem regras
independentes do banco de dados; e as regras de preenchimento tratam
exatamente de validações prévias à gravação no banco. Acho antes que
trata-se de uma questão de modelagem.

Se precisa exibir o valor da nova chave mesmo antes do registro ser
gravado, então incluir GEN_ID(SeuGenerator, 1) é uma boa saída, desde
que tenha ciência que em caso de cancelamento da inclusão esse número
da sequência já foi utilizado. Se, por outro lado, não precisa exibir
a chave antes da confirmação do cadastro, incrementar o valor na
trigger BeforeInsert deve ser o suficiente.

De toda forma, os componentes InterbaseExpress (IBX) possuem a
propriedade GeneratorField, que trata com eficácia esse problema; os
componentes ZeosDBO possuem o TZSequence que também resolve com
primazia essa questão.
Por isso tenho dúvidas se estamos falando de um bug, ou da ausência de
um recurso útil. Por tantas questões pequenas como essas que há muito
já deixei de utilizar dbExpress.


Abraço!
Jeferson Oliveira

______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para editar sua configuração na lista, use o endereço 
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa







Mais detalhes sobre a lista de discussão lista