SQL via comando no Delphi. Ajuda!
Estou desenvolvendo um aplicativo para facilitar minha vida no trabalho (e até, quem sabe, ganhar um pouco de prestígio). Uso Querys para se comunicar com tabelas Paradaox; O Comando está correto e funciona, mas sempre depois acontece o seguinte erro: ´Error creating cursor handle.´ e para por aí, não executando os outros comando. Não sei o que isso significa, pois sou iniciante na arte de programar! Ajuda!!!
Geronildojr
Curtidas 0
Respostas
Macario
30/01/2004
poste o codigo...para podermos ver o possivel erro
GOSTEI 0
Geronildojr
30/01/2004
O código que estou utilizando é o seguinte:
Q_CadastroProtocolo.Close;
Q_CadastroProtocolo.sql.clear;
Q_CadastroProtocolo.sql.add(´UPDATE Lotes SET DtPagamento=´+ char(39)+ DBEdit34.Text +char(39)+ ´WHERE DtEntregaProtocolo<>´+ char(39)+ Edit1.Text +char(39)+ ´AND DtPagamento=´+ char(39)+ Edit1.Text +char(39)+´ AND Devolucao=´+ char(39)+ Edit1.Text +char(39));
Q_CadastroProtocolo.Open;
E o erro acontece também com:
Q_Efetiva_Pagamento.Close;
Q_Efetiva_Pagamento.SQL.Clear;
Q_Efetiva_Pagamento.sql.add(´INSERT INTO Pagamentos_Efetivados VALUES(´ +char(39)+ Edit1.Text +char(39)+ ´,´ +char(39)+ DBEdit36.Text +char(39)+ ´,´ +char(39)+ DBEdit37.Text +char(39)+ ´,´ +char(39)+ DBEdit34.Text +char(39)+ ´,´ +char(39)+ DBEdit35.Text +char(39)+ ´,´ +char(39)+ DBEdit38.Text +char(39)+ ´,´ +char(39)+ DBEdit41.Text +char(39)+ ´)´);
Q_Efetiva_Pagamento.open;
Q_CadastroProtocolo.Close;
Q_CadastroProtocolo.sql.clear;
Q_CadastroProtocolo.sql.add(´UPDATE Lotes SET DtPagamento=´+ char(39)+ DBEdit34.Text +char(39)+ ´WHERE DtEntregaProtocolo<>´+ char(39)+ Edit1.Text +char(39)+ ´AND DtPagamento=´+ char(39)+ Edit1.Text +char(39)+´ AND Devolucao=´+ char(39)+ Edit1.Text +char(39));
Q_CadastroProtocolo.Open;
E o erro acontece também com:
Q_Efetiva_Pagamento.Close;
Q_Efetiva_Pagamento.SQL.Clear;
Q_Efetiva_Pagamento.sql.add(´INSERT INTO Pagamentos_Efetivados VALUES(´ +char(39)+ Edit1.Text +char(39)+ ´,´ +char(39)+ DBEdit36.Text +char(39)+ ´,´ +char(39)+ DBEdit37.Text +char(39)+ ´,´ +char(39)+ DBEdit34.Text +char(39)+ ´,´ +char(39)+ DBEdit35.Text +char(39)+ ´,´ +char(39)+ DBEdit38.Text +char(39)+ ´,´ +char(39)+ DBEdit41.Text +char(39)+ ´)´);
Q_Efetiva_Pagamento.open;
GOSTEI 0
Levogiro
30/01/2004
você deve usar o método ExecSQL ao invés de Open.
GOSTEI 0