Como funciona o Exeptions do Firebird?
Como funciona o Exceptions do Firebird?
vi que posso informar uma mensagem de erro. mas como faço para disparar esta mensagem...?
vi que posso informar uma mensagem de erro. mas como faço para disparar esta mensagem...?
Raserafim
Curtidas 0
Respostas
Gandalf.nho
06/01/2006
Primeiro vc cria a exceção com CREATE EXCEPTION. Ex:
Depois vc pode usá-la numa trigger ou SP, bastando usar o comando:
Essa mensagem de erro personalizada é interceptada pela aplicação como qualquer outra mensagem de erro e tratada de acordo.
CREATE EXCEPTION TESTE ´Exceção de teste´;
Depois vc pode usá-la numa trigger ou SP, bastando usar o comando:
EXCEPTION nome_exceção
Essa mensagem de erro personalizada é interceptada pela aplicação como qualquer outra mensagem de erro e tratada de acordo.
GOSTEI 0
Raserafim
06/01/2006
eu iria criar atravez do IB Expert, mas não entendi legal pra que realmente serve (qual a grande vantagem) o Exception.
Serve apenas para mostrar uma mensagem? e se for é mais viável colocar isso no banco do que no delphi?
Serve apenas para mostrar uma mensagem? e se for é mais viável colocar isso no banco do que no delphi?
GOSTEI 0
Afarias
06/01/2006
|Serve apenas para mostrar uma mensagem?
não. server para abortar uma operação no banco, enviando uma mensagem ao cliente informando do ocorrido.
T+
não. server para abortar uma operação no banco, enviando uma mensagem ao cliente informando do ocorrido.
T+
GOSTEI 0
Raserafim
06/01/2006
cliente significa tb a aplicação?
então isso significa que seria uma forma de a base se comunicar, ´via eventos´ com a aplicação, possibilitando q algum procedimento da aplicação seja disparado quando um Eception for executado. é isso mesmo?
então isso significa que seria uma forma de a base se comunicar, ´via eventos´ com a aplicação, possibilitando q algum procedimento da aplicação seja disparado quando um Eception for executado. é isso mesmo?
GOSTEI 0
Afarias
06/01/2006
|cliente significa tb a aplicação?
isso
|então isso significa que seria uma forma de a base se comunicar, ´via
|eventos´ com a aplicação, possibilitando q algum procedimento da
|aplicação seja disparado quando um Eception for executado.
não. não exatamente como eventos -- para isso existe o POST EVENT
a exception funciona como no delphi -- não é um sistema de informação, é um sistema de controle.
por exemplo, poderia ter uma exception como:
e usar em uma trigger before insert tipo:
desta forma a exception não deixa passar a inclusão de registros ´inválidos´ e informa a aplicação que foi tentado gravar um registro q não está seguindo determinada regra
T+
isso
|então isso significa que seria uma forma de a base se comunicar, ´via
|eventos´ com a aplicação, possibilitando q algum procedimento da
|aplicação seja disparado quando um Eception for executado.
não. não exatamente como eventos -- para isso existe o POST EVENT
a exception funciona como no delphi -- não é um sistema de informação, é um sistema de controle.
por exemplo, poderia ter uma exception como:
create exception desconto_invalido ´Erro. Produto nao permite desconto´;
e usar em uma trigger before insert tipo:
if (new.tipo_produto = 1 and new.desconto > 0) then exception desconto_invalido;
desta forma a exception não deixa passar a inclusão de registros ´inválidos´ e informa a aplicação que foi tentado gravar um registro q não está seguindo determinada regra
T+
GOSTEI 0
Rtava
06/01/2006
Dê uma olhada neste post:
http://forum.clubedelphi.net/viewtopic.php?t=73629
http://forum.clubedelphi.net/viewtopic.php?t=73629
GOSTEI 0