Ir para conteúdo
Fórum Script Brasil
  • 0

Insert Into + Postgres


Paltrin

Pergunta

Prezados Amigos.

_ Sou iniciante por aqui, preciso de uma ajuda basica.

_ Tenho esse codigo abaixo é um insert into em uma tale do postgrelsql.

procedure TFrmCadastro.BitBtn2Click(Sender: TObject);

begin

with Zquery do

begin

Zquery.Close;

sql.Clear;

sql.Text:=' insert into fornec ( '

+' cpfcpj, rzofor, ftsfor, logcom, '

+' numcom, baicom, cepcom, cidcom, '

+' estfor, codfor, insfor, emlfor, '

+' telfor, faxfor, celfor )'

+' values ( '

+' :vcpfcpj, :vrzofor, :vftsfor, :vlogcom, '

+' :vnumcom, :vbaicom, :vcepcom, :vcidcom, '

+' :vestfor, :vcodfor, :vinsfor, :vemlfor, '

+' :vtelfor, :vfaxfor, :vcelfor )';

Parambyname('vcpfcpj').Value := DBCPFCNPJ.Text ;

Parambyname('vrzofor').Value := DBRAZAO.Text ;

Parambyname('vftsfor').Value := DBNOME.Text ;

Parambyname('vlogcom').Value := DBENDERECO.Text ;

Parambyname('vnumcom').Value := DBNUMERO.Text ;

Parambyname('vbaicom').Value := DBBAIRRO.Text ;

Parambyname('vcepcom').Value := DBCEP.Text ;

Parambyname('vcidcom').Value := DBCIDADE.Text ;

Parambyname('vestfor').Value := DBUF.Text ;

Parambyname('vcodfor').Value := DBCODFORNEC.Text ;

Parambyname('vinsfor').Value := DBESTADUAL.Text ;

Parambyname('vemlfor').Value := DBEMAIL.Text ;

Parambyname('vtelfor').Value := DBTELEFONE.Text ;

Parambyname('vfaxfor').Value := DBFAX.Text ;

Parambyname('vcelfor').Value := DBCELULAR.Text ;

try

zquery.ExecSQL;

zConnection.Commit;

zQuery.Refresh; //faz um refresh na tabela para atualizar os dados

ShowMessage('Ocorreu um erro na tentantiva de gravar os registro: ');

except

on Exc:Exception do

begin

ShowMessage('Ocorreu um erro na tentantiva de gravar os registro: ' + Exc.Message);

zConnection.Rollback;

zQuery.Refresh; //faz um refresh na tabela para atualizar os dados

end;

end; //final do bloco do try/except

end;

end;

O detalhe que da dando um erro apos a entrada dos dados na dbedit e clicando no botão veja o erro :

Raised Exception Class EZQLException.

Poderia passa uma solução para mim ou outra forma de construção......

Grato pela ajuda....

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0
Sugestão: sbstitua os dbedits por edits ou mude a SQL para:

Select * from fornec

order by NOME

Paltrin, isto que o Jhonas postou até pode ser uma "solução".

Entretanto, uma vez que você está utilizando componentes data-aware (os TDBEdit's), tenho que perguntar qual é o dataset que você vinculou a eles? E os dados retornados por ele, são mostrados em algum momento nestes TDBEdit's ou você os utilizou apenas para entrada de dados? Porque ser foi apenas para entrada de dados, melhor opção é a que o Jhonas colocou, mas se não for, talvez seja mais interessante utilizar o componente ZUpdateSQL combinado com o ZQuery, porque daí você os dados digitados nos DBEdits podem ser gravados diretamente no dataset, apenas com um Post. Claro que o componente ZUpdateSQL terá que ter suas propriedades ModifySQL, InsertSQL, DeleteSQL,... corretamente.

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...