[firebase-br] Stored procedure inserção com commit?
Marcelo Guilherme Tamanini
marcelo_tamanini em hotmail.com
Qua Fev 11 09:25:19 -03 2009
Bom dia,
pessoal.
Eu fiquei procurando na internet sobre o uso de begin, commit e rollback transaction dentro de uma stored procedure e pelo que entendi, a partir do firebird 2.0, foi incluído esse comandos. E eu estou utilizando a versão 2.1!
No fim, estou tentando montar uma stored procedure para inserção com esses comandos, mas está gerando erro logo na 2ª linha, logo no IF, "parsing error". Será que alguém poderia me ajudar a corrigir?
Segue o código:
BEGIN
if (SELECT COUNT(NumeroSerie) TB_Aparelho WHERE NumeroSerie = :NumeroSerie) = 0 then
BEGIN
BEGIN TRANSACTION
INSERT INTO TB_Aparelho (NumeroSerie, DataColeta, Descricao
, Senha, Leitura, CorrecaoTemperatura, AlarmeQualidade1)
VALUES (:NumeroSerie, :DataColeta, :Descricao, :Senha, :Leitura
, :CorrecaoTemperatura, :AlarmeQualidade1)
RETURNING CodAparelho
INTO :Identity;
COMMIT TRANSACTION
END
ELSE
BEGIN
EXCEPTION EQUIPAMENTO_EXISTENTE;
SUSPEND;
END
END
_________________________________________________________________
Connect to the next generation of MSN Messenger
http://imagine-msn.com/messenger/launch80/default.aspx?locale=en-us&source=wlmailtagline
Mais detalhes sobre a lista de discussão lista