[firebase-br] erro insert em procedure
Daniel
daniellcr em yahoo.com.br
Qua Set 22 17:24:33 -03 2010
Olá pessoal, dá uma ajuda aí se possível.
tenho a seguinte insert em uma procedure
insert into MOV_BANCARIA (CODIGO ,DATA ,COD_EMPRESA ,COD_CONTA ,VALOR ,DOC ,HISTORICO ,OBSERVACOES ,COD_NATUREZA)
VALUES ((select max(codigo)+1 from mov_bancaria),:data,:empresa_saida,:conta_saida,:valor ,:doc,:historico,:observacoes,natureza_saida);
nesta execução apresenta o seguinte erro:
violation of FOREIGN KEY constraint "".
violation of FOREIGN KEY constraint "FK_MOV_BANCARIA_CONTA" on table "MOV_BANCARIA".
Foreign key reference target does not exist.
At procedure 'TRANSFERENCIA' line: 20, col: 1.
se eu informo diretamente os valores dos campos COD_CONTA E COD_NATUREZA ao invés de usar a variavel não da erro algum sendo que o valor é o mesmo se eu preencher a variável de INPUT.
insert into MOV_BANCARIA (CODIGO ,DATA ,COD_EMPRESA ,COD_CONTA ,VALOR ,DOC ,HISTORICO ,OBSERVACOES ,COD_NATUREZA)
VALUES ((select max(codigo)+1 from mov_bancaria),:data,:empresa_saida,1 ,:valor ,:doc,:historico,:observacoes,1);
CREATE PROCEDURE TRANSFERENCIA (
NATUREZA_SAIDA INTEGER,
DATA DATE,
EMPRESA_SAIDA INTEGER,
CONTA_SAIDA INTEGER,
VALOR DECIMAL(15,2),
DOC VARCHAR(20),
HISTORICO VARCHAR(50),
OBSERVACOES VARCHAR(32000),
NATUREZA_ENTRADA INTEGER,
CONTA_ENTRADA INTEGER)
AS
begin
natureza_saida = 0;
natureza_entrada = 0;
valor = 0;
conta_saida = 0;
conta_entrada = 0;
insert into MOV_BANCARIA (CODIGO ,DATA ,COD_EMPRESA ,COD_CONTA ,VALOR ,DOC ,HISTORICO ,OBSERVACOES ,COD_NATUREZA)
VALUES ((select max(codigo)+1 from mov_bancaria),:data,:empresa_saida,:conta_saida,:valor ,:doc,:historico,:observacoes,natureza_saida);
suspend;
end
Mais detalhes sobre a lista de discussão lista