Minha Query não esta buscando os valores atualizados no Banc
25/06/2008
0
Estou usando o Delphi 2007 como ferramenta e o FireBird 2.0 como Banco de Dados, e para consulta do Banco de Dados, o famoso IBExpert.
o Problema é o seguinte, estou desenvolvendo um sistema simples,
onde varias pessoas estao acessando diretamenta o meu banco de dados pela rede, o banco de dados esta localizada na minha maquina IP 172.16.0.23,
mas toda vez que alguem inclui ou exclui alguma coisa no meu banco de dados uma outra pessoa que esteja com aplicação aberta nao ve que foi excluido ou incluido o registro, a nao ser que ela feche a aplicação e abra ela novamente ai vai constar quue foi excluido ou incluido, mas eu nao quero que seja dessa forma, quero que quando alguem exclui ou inclui apareca que foi modificado.
estou usando todos os componentes de conexao da guia INTERBASE, que são:
IBDATABASE para conexao com o banco de Dados;
IBTRANSACTION;
IBQUERY
IBUPDATESQL
e da guia DATA ACCESS
DATASOURCE
quando alguem vai salvar alguma coisa o codigo é o seguinte:
modulo.IBQLogixNOME.Text :=edtNome.text;
modulo.IBQLogixV1.Text :=edtV1.Text;
modulo.IBQLogixV2.Text :=edtV2.Text;
modulo.IBQLogixV3.Text :=edtV3.text;
modulo.IBQLogixV4.Text :=edtV4.text;
modulo.IBQLogixV5.Text :=edtV5.Text;
modulo.IBQLogix.Post;
modulo.IBTransacao.Commit;
e quando alguem vai consultar o codigo que eu utilizo é este:
estou usando no evento do edit ONKEYUP, quando é digitado
modulo.IBQLogix.close;
modulo.IBQLogix.SQL.Clear;
modulo.IBQLogix.SQL.Add(´select * from logix´);
modulo.IBQLogix.SQL.Add(´where logix.nome like ´¬´+edtpesquisa.Text+´¬´´´);
modulo.IBQLogix.Open;
Lembrando que eu nao estou usando o Cache Update da query, eu usei mas tambem nao funcionou, eu tambem começei usar o commitretaining, mas eu li em uns forum onde o pessoal aconselha a usar o commit.
alguem poderia me dar uma ajuda ou alguma dica, eu agradeceria muito. :wink:
Marlonnardi
Posts
25/06/2008
Brunodsr
O problema esta na tua transacao.. ela ta configurada como snapshot. Muda ela p/ readcommited. Dai todo mundo vai ver o que o outro fez sem precisar sair e abrir de novo. blz?
Obs.: Para configurar, clica duas vezes no componente transaction.
Espero ter ajudado.
25/06/2008
Marlonnardi
voce nao sabe o quanto eu bati a cabeça por causa disso, ja refiz o meu codigo umas 3 vezes, rsrsrsrssr.
eu marquei la opção e funcionou tudo blz
BRUNO, MUITO OBRIGADO PELA DICA!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
02/07/2008
Wgm8
Estou usando o Delphi 5;
TDataBase;
TQuery;
TUpdateSQL;
TDataSource;
TDBNavigator;
Com BDE;
Alguém sabe porque não atualiza?
09/07/2008
Brunodsr
OPEN/MODE.
Espero ter ajudado
09/07/2008
Brunodsr
Desculpe.. confusao minha. Instrucao errada.
Verifica se antes das tuas insercoes/modificacoes existe um startransaction e ao final um commit. O BDE ja trabalha por default como read/commited.
se n rolar, manda um exemplo do teu codigo ou um programa de teste. blz?
Clique aqui para fazer login e interagir na Comunidade :)