Como tratar um específico Erro de Exceção.
Está ocorrendo o seguinte erro de exceção ao executar um comando SQL para efetuar alterações em alguns registros:
´Error creating cursor handle´
O código é:
---------------------------------------------------
Dados.DtbsBD2.StartTransaction;
try
..Q022.Close;
..Q022.SQL.Clear;
..Q022.SQL.Add(´update tabela set campo=´U´ where compet=´200201´ and lote=334 and nota=60166´);
..Q022.Open;
..Dados.DtbsBD2.Commit;
except
..on E: Exception Do
..begin
....Dados.DtbsBD2.Rollback;
....Application.MessageBox(PChar(´Impossível alterar a Nota! ´
....+#1310+1310+e.Message),´Mensagem´,MB_OK+MB_ICONInformation);
..end;
end;
---------------------------------------------------
Utilizo componentes BDE para conectar ao banco de dados.
Se eu remover os comandos de controle de transação, o erro continua ocorrendo, mas a alteração é efetuada sem problemas.
Este erro de exceção está indicando realmente algum problema?
Ou, posso ignorá-lo e, neste caso, como devo tratar este erro?
Estas são as minhas dúvidas, se alguém puder ajudar, obrigado.
Alexandre S.V.
´Error creating cursor handle´
O código é:
---------------------------------------------------
Dados.DtbsBD2.StartTransaction;
try
..Q022.Close;
..Q022.SQL.Clear;
..Q022.SQL.Add(´update tabela set campo=´U´ where compet=´200201´ and lote=334 and nota=60166´);
..Q022.Open;
..Dados.DtbsBD2.Commit;
except
..on E: Exception Do
..begin
....Dados.DtbsBD2.Rollback;
....Application.MessageBox(PChar(´Impossível alterar a Nota! ´
....+#1310+1310+e.Message),´Mensagem´,MB_OK+MB_ICONInformation);
..end;
end;
---------------------------------------------------
Utilizo componentes BDE para conectar ao banco de dados.
Se eu remover os comandos de controle de transação, o erro continua ocorrendo, mas a alteração é efetuada sem problemas.
Este erro de exceção está indicando realmente algum problema?
Ou, posso ignorá-lo e, neste caso, como devo tratar este erro?
Estas são as minhas dúvidas, se alguém puder ajudar, obrigado.
Alexandre S.V.
Alexandre7
Curtidas 0
Respostas
Alexandre7
27/10/2003
Pessoal:
Realizei uma primeira pesquisa de forma errada, mas, à pouco, em uma segunda pesquisa aqui no fórum, encontrei a resposta:
Para os comandos INSERT, UPDATE e DELETE devo utilizar:
query.ExecSQL
E para o comando SELECT devo usar:
query.Open
Realizei uma primeira pesquisa de forma errada, mas, à pouco, em uma segunda pesquisa aqui no fórum, encontrei a resposta:
Para os comandos INSERT, UPDATE e DELETE devo utilizar:
query.ExecSQL
E para o comando SELECT devo usar:
query.Open
GOSTEI 0
Michel
27/10/2003
o open eu uso para abrir alguma consulta no banco de dados
GOSTEI 0