[firebase-br] Store Procedure

Sandro Souza escovadordebits em gmail.com
Seg Jun 18 14:28:50 -03 2012


Bom dia/tarde Alexandre.

Uma stored procedure pode retornar um ou mais valores, ou não retornar
valor algum. Tudo depende de como ela foi declarada/criada.

Quando ocorre um erro dentro de uma stored procedure, é criada/gerada uma
exceção, e a mesma é disparada, como o comando "throw" do PHP que você
conhece.

Dentro de uma stored procedure, você pode capturar uma exceção usando o
comando WHEN.

Uma das páginas que encontrei, e que descreve o comando WHEN é a seguinte:
http://www.janus-software.com/fbmanual/manual.php?book=psql&topic=24

Do ponto de vista do PHP, você pode executar a stored procedure dentro de
um bloco de try/catch, e aí poderá segurar a exceção e efetuar o devido
tratamento, como por exemplo:

try {
  // Executa a stored procedure.
  ...
  // Efetiva (commit) a transação atual.
  ...
  // Não ocorreu exceção alguma, tudo tranquilo.
  ...
} catch(Exception $e) {
  // Ops! Ocorreu uma exceção! Tratando-a.
  echo "Ocorreu a seguinte exceção: " . $e->getMessage();
}

É só um exemplo bem básico, mas espero que lhe ajute nessa questão de
gerenciar as possíveis exceções ocorridas.

Espero ter ajudado mais que atrapalhado. :D

Em 18 de junho de 2012 13:16, Alexandre Pereira Bühler <
alexandre em simaoebuhler.com.br> escreveu:

> Boa tarde,
>
> Li o manual do Firebird.
>
> As SP retornam algum valor se forma executadas corretamente ou algum valor
> em caso de erro?
>
> Preciso fazer um controle via php se ela foi executada  ou não.
>
> Agradeço se me indicarem o caminho das pedras.
>
> Obrigado
>
>
>
> --
>
> Alexandre Pereira Bühler
>
> Técnico Eletroeletrônica - Senai - MG
>
> Linux User: 397.546
>
> Owner:  <http://br.groups.yahoo.com/group/freepascal/>
> http://br.groups.yahoo.com/group/freepascal/
>
> Liberdade é essencial. Use GNU/Linux.
>
> Legalize os softwares de sua empresa
>
>
>
> Simão &  Bühler Ltda (Infobrindes)
>
> Instalação, manutenção, venda de servidores e computadores com GNU/Linux.
>
>  <http://www.simaoebuhler.com.br> http://www.simaoebuhler.com.br
>
> Hardware! Acesse, veja e tenha produtos com qualidade, garantia e nota
> fiscal.
>
>  <http://www.simaoebuhler.com.br/loja> http://www.simaoebuhler.com.br/loja
>
>  <mailto:alexandre em simaoebuhler.com.br> alexandre em simaoebuhler.com.br
>
> Telefone: (41) 3039-5428
>
>
>
> Infobrindes (Simão &  Bühler Ltda)
>
> Brindes e material promocional.
>
>  <http://www.infobrindes.com.br> http://www.infobrindes.com.br
>
>  <mailto:alexandre em infobrindes.com.br> alexandre em infobrindes.com.br
>
> Telefone: (41) 3082-8667
>
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



Mais detalhes sobre a lista de discussão lista