Guest --Guilherme -- Postado Setembro 27, 2007 Denunciar Share Postado Setembro 27, 2007 (editado) EXCEÇÃOEIBInterBaseError with message 'Dynamic SQL Error SQL error cod = -104 Token unknown -line 4, char -1 '3000''. Executo o código assim:... DM.IBTransaction1.CommitRetaining; with DM.qryManutencao do begin Close; SQL.Clear; SQL.Add('insert into LIVROS'); SQL.Add(' (LIVCODIGO, LIVTITULO, LIVEDITORA, LIVAUTOR, LIVEDICAO, LIVDTCADASTRO, LIVFORNEC, LIVTELFORNEC, LIVDISPONIVEL, LIVATUALIZA)'); SQL.Add(' values '); SQL.Add(QuotedStr(vgsLivCodigo) + ',' + QuotedStr(vgsLivTitulo) + ', ' + QuotedStr(vgsLivEditora) + ', ' + QuotedStr(vgsLivAutor) + ', ' + QuotedStr(vgsLivEdicao) + ', ' + QuotedStr(vgsLivDtCadastro) + ', ' + QuotedStr(vgsLivEditora) + ', ' + QuotedStr(vgsLivFornec) + ', ' + QuotedStr(vgsLivTelFornec) + ', ' + QuotedStr(vgsLivDtCadastro) + ', ' + QuotedStr(vgsDataHora) + ' '); SQL.Add('COMMIT WORK'); ExecSQL; end;O que estaria errado ?Agradeço a ajuda. Editado Setembro 27, 2007 por Micheus Incluída tag's CODE para melhorar a visualização. Utilize a identação também ;) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Micheus Postado Setembro 27, 2007 Denunciar Share Postado Setembro 27, 2007 EXCEÇÃOEIBInterBaseError with message 'Dynamic SQL Error SQL error cod = -104 Token unknown -line 4, char -1 '3000''. Executo o código assim:... DM.IBTransaction1.CommitRetaining; with DM.qryManutencao do begin Close; SQL.Clear; SQL.Add('insert into LIVROS'); SQL.Add(' (LIVCODIGO, LIVTITULO, LIVEDITORA, LIVAUTOR, LIVEDICAO, LIVDTCADASTRO, LIVFORNEC, LIVTELFORNEC, LIVDISPONIVEL, LIVATUALIZA)'); SQL.Add(' values '); SQL.Add(QuotedStr(vgsLivCodigo) + ',' + QuotedStr(vgsLivTitulo) + ', ' + QuotedStr(vgsLivEditora) + ', ' + QuotedStr(vgsLivAutor) + ', ' + QuotedStr(vgsLivEdicao) + ', ' + QuotedStr(vgsLivDtCadastro) + ', ' + QuotedStr(vgsLivEditora) + ', ' + QuotedStr(vgsLivFornec) + ', ' + QuotedStr(vgsLivTelFornec) + ', ' + QuotedStr(vgsLivDtCadastro) + ', ' + QuotedStr(vgsDataHora) + ' '); SQL.Add('COMMIT WORK'); ExecSQL; end;O que estaria errado ?Guilherme, o que pode estar errado é este "COMMIT WORK". A "comitação" é feita através da sua transação (componente IBTransaction).Observe, inclusive, que você já está fazendo isto antes de passar o novo insert, quando utiliza a linha:DM.IBTransaction1.CommitRetaining;Esta transação, muito provavelmente, deve estar associada ao seu componente "qryManutencao" (propriedade Transaction), e é justamente este comando que você deverá executar, caso sua inserção não falhe.Mas também, parece-me estar faltando os parênteses da cláusula VALUES -> values ( valor_1, valor_2, ..., valor_n)Abraços Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Guest --Guilherme --
EXCEÇÃO
EIBInterBaseError with message 'Dynamic SQL Error SQL error cod = -104 Token unknown -line 4, char -1 '3000''.
Executo o código assim:
O que estaria errado ?
Agradeço a ajuda.
Editado por MicheusIncluída tag's CODE para melhorar a visualização. Utilize a identação também ;)
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.