Euler Taveira de Oliveira escreveu:
> Marcelo Moacir Florindo escreveu:
>
>   
>> tenho uma trigger que valida se determinado campo está preenchido, por
>> exemplo. Como deveria fazer para que se o campo não estiver preenchido o meu
>> sistema (feito em delphi e php) receba alguma retorno da trigger e deste
>> modo eu possa tratar e apresentar uma msg ao usuário???
>>
>>     
> Na minha opinião, utilizar gatilhos para validação de campos não é uma
> boa; a não ser que a validação seja complexa e você precise realmente de
> uma função para tal (que pena o ASSERTION não estar implementado ainda :( ).
> Os frontends que você citou tem inúmeros esquemas de validação embutidos
> ou fáceis de implementar; PHP (javascript/AJAX) e Delphi (componentes
> embutidos).
> Não posso também deixar de dizer que a validação no banco para garantir
> o "I" (integridade) com restrições e chaves primárias e estrangeiras são
> muito importantes para consistência dos dados em si.
>
>   
Olá Marcelo, alguns frameworks que conheco caminham para a validacao de 
campos através de gatilhos e apesar de não recomendar devido ao fato de 
voce utilizar uma conexao com banco de dados para simplesmente testar os 
dados(sim, pois se forem invalidos voce usou uma conexao e nao fez nada 
no banco)

Mas se sua ferramenta utiliza este tipo de recurso o que voce pode fazer 
é utilizar stored procedures com raise notice e captar em qualquer 
driver o last_notice, por exemplo no php pg_last_notice para que voce 
tenha a ultima mesagem vinda do servidor ou ate'mesmo pg_last_error, msa 
se voce ficar abrindo raise exception suas stored procedure snunca 
chegaram no fim compreende.
 NO delphi, qualquer driver deve implementar a captacao dessa mensagem e 
ai voce lida com o objeto timer para leitura da mesma.
Verifique o zeosdb.
ok.
até mais.


-- 
Ivo Nascimento
Iann tech - Desenvolvendo soluções com performance e segurança
http://www.ianntech.com.br

_______________________________________________
Grupo de Usuários do PostgreSQL no Brasil
Antes de perguntar consulte o manual
http://pgdocptbr.sourceforge.net/

Para editar suas opções ou sair da lista acesse a página da lista em:
http://pgfoundry.org/mailman/listinfo/brasil-usuarios

Responder a