Erro em trigger no firebird

31/12/2021

0

Olá, recentemente(a uns dois dias atrás) eu comecei a estudar o firebird, dai como treino iria criar um "sistema" onde teria duas tabelas: TGFPAR(tabela que contém os códigos dos parceiros e as demais informações) e AD_MOVLINTEL(que registra todas as movimentações de linhas telefônicas). Então eu estava tentando criar uma trigger na tabela AD_MOVLINTEL, para verificar se o código de parceiro inserido esta na tabela TGFPAR. Porém sempre da o seguinte erro:

SQL Error [335544851] [42000]: Dynamic SQL Error; SQL error code = -104; Unexpected end of command - line 6, column 25 [SQLState:42000, ISC error code:335544851]



SEGUE O CÓDIGO DA TRIGGER:

CREATE TRIGGER TRG_MOVLINTEL FOR AD_MOVLINTEL
ACTIVE 
BEFORE INSERT 
POSITION 0
AS 
DECLARE VARIABLE vCOUNT integer;
BEGIN
	SELECT COUNT(CODPARC) FROM TGFPAR WHERE CODPARC = NEW.AD_CODPARC INTO :VCOUNT ;

	IF(VCOUNT = 0) THEN
		INSERT RESULTADOS SET resultado = "Não existe esse parceiro";
	END IF
		
END
Ramsés

Ramsés

Responder

Post mais votado

31/12/2021

Já que você quer usar recursos do banco de dados, faça referência à chave estrangeira, assim não precisa fazer qualquer controle; o banco de dados faz o controle e mantém a integridade referencial.

Emerson Nascimento

Emerson Nascimento
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar