DBExpress / ClientDataSet
Estou com dificuldades para conseguir Comitar uma transacao, Estou fazendo uma aplicacao Delphi com bd Oracle com os componentes SQLQuery, ClientDataSet.
Ja criei a transacao deste jeito:
transacao : transactiondesc;
begin
transacao.TransactionID := 1;
transacao.IsolationLevel := xilREADCOMMITTED;
SQLConnection1.StartTransaction(transacao);
SQLConnection1.Commit(transacao);
end;
porem nada mudou fui no banco oracle tentei comitar la e nem assim a informacao foi gravada.
Alguem sabe o q pode ser feito ?
Agradeço pela colaboração.
Ja criei a transacao deste jeito:
transacao : transactiondesc;
begin
transacao.TransactionID := 1;
transacao.IsolationLevel := xilREADCOMMITTED;
SQLConnection1.StartTransaction(transacao);
SQLConnection1.Commit(transacao);
end;
porem nada mudou fui no banco oracle tentei comitar la e nem assim a informacao foi gravada.
Alguem sabe o q pode ser feito ?
Agradeço pela colaboração.
Tulio_am
Curtidas 0
Respostas
Macario
04/12/2006
Ola.
O que voce esta executando entre o inicio e o final da transacao?
Digamos que voce tenha um ApplyUpdates(0) ai no meio.
Voce precisa verificar se esta ocorrendo tudo corretamente para entao poder efetuar o commit da transacao.
Veja: [url=http://forum.clubedelphi.net/viewtopic.php?t=58547&start=0&postdays=0&postorder=asc&highlight=transa¬E7¬E3ourl] Transações com DbExpress de forma Bidirecional[/url]
espero que lhe ajude.
8)
O que voce esta executando entre o inicio e o final da transacao?
Digamos que voce tenha um ApplyUpdates(0) ai no meio.
Voce precisa verificar se esta ocorrendo tudo corretamente para entao poder efetuar o commit da transacao.
Veja: [url=http://forum.clubedelphi.net/viewtopic.php?t=58547&start=0&postdays=0&postorder=asc&highlight=transa¬E7¬E3ourl] Transações com DbExpress de forma Bidirecional[/url]
espero que lhe ajude.
8)
GOSTEI 0
Tulio_am
04/12/2006
Boa Tarde!
Marcario tentei dar o ApplyUpdates(0) e ocorreu o seguinte erro:
ORA-01722: Numero Invalido.
Obs: estava usando DBNavigator ele nao da o ApplyUpdates automaticamente?
Obrigado pela colaboração!
Marcario tentei dar o ApplyUpdates(0) e ocorreu o seguinte erro:
ORA-01722: Numero Invalido.
Obs: estava usando DBNavigator ele nao da o ApplyUpdates automaticamente?
Obrigado pela colaboração!
GOSTEI 0
Titanius
04/12/2006
Boa Tarde!
Marcario tentei dar o ApplyUpdates(0) e ocorreu o seguinte erro:
ORA-01722: Numero Invalido.
Obs: estava usando DBNavigator ele nao da o ApplyUpdates automaticamente?
Obrigado pela colaboração!
Nenhum componente dá o ApplyUpdates no CDS automaticamente, você tem que fazer isso na mão.. :D
[]s
GOSTEI 0
Macario
04/12/2006
Olá [b:9b27fca416]tulio_am[/b:9b27fca416].
Se voce quiser continuar a usar o dbnavigator, você poderá tratar o evento do Button referente ao Post, para quando ele for clicado disparar em sequencia um ApplyUpdates.
Use o evento OnClick do dbNavigator tipo:
Espero que lhe ajude. 8)
Se voce quiser continuar a usar o dbnavigator, você poderá tratar o evento do Button referente ao Post, para quando ele for clicado disparar em sequencia um ApplyUpdates.
Use o evento OnClick do dbNavigator tipo:
begin
case Button of
nbInsert: //Faz tal coisa
nbEdit: //Faz tal coisa
nbDelete: ClientDataSet.ApplyUpdate(0);
nbPost: ClientDataSet.ApplyUpdate(0);
nbCancel: ClientDataSet.CancelUpdates;
end;
{: }
end;Espero que lhe ajude. 8)
GOSTEI 0