Paltrin Postado Outubro 30, 2007 Denunciar Share Postado Outubro 30, 2007 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);beginwith Zquery dobeginZquery.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 ;tryzquery.ExecSQL;zConnection.Commit;zQuery.Refresh; //faz um refresh na tabela para atualizar os dadosShowMessage('Ocorreu um erro na tentantiva de gravar os registro: ');excepton Exc:Exception dobeginShowMessage('Ocorreu um erro na tentantiva de gravar os registro: ' + Exc.Message);zConnection.Rollback;zQuery.Refresh; //faz um refresh na tabela para atualizar os dadosend;end; //final do bloco do try/exceptend;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.... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jhonas Postado Outubro 30, 2007 Denunciar Share Postado Outubro 30, 2007 Sugestão: sbstitua os dbedits por edits ou mude a SQL para:Select * from fornecorder by NOME Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Micheus Postado Outubro 31, 2007 Denunciar Share Postado Outubro 31, 2007 Sugestão: sbstitua os dbedits por edits ou mude a SQL para:Select * from fornecorder by NOMEPaltrin, 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. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Paltrin
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
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.