SQL-InterBase Avançados
Olá pessoal,
estou com um grande problema, estou desenvolvendo um aplicativo
cliente-servidor. Para acessar o bando de dados estou usando
o ibquery, o problema é o seguinte: quando faço um update em um
campo da tabela ele só é atualizado quando eu fecho o ibdatabase,
só que eu não posso fecha-lo. Então o cliente não ve a informação
atualizada e sim a antiga.
Como faço para atualizar sem fechar o ibdatabase??
Muito Obrigada.
Beijos!!!
estou com um grande problema, estou desenvolvendo um aplicativo
cliente-servidor. Para acessar o bando de dados estou usando
o ibquery, o problema é o seguinte: quando faço um update em um
campo da tabela ele só é atualizado quando eu fecho o ibdatabase,
só que eu não posso fecha-lo. Então o cliente não ve a informação
atualizada e sim a antiga.
Como faço para atualizar sem fechar o ibdatabase??
Muito Obrigada.
Beijos!!!
Leticia
Curtidas 0
Respostas
Obubiba
02/06/2003
Inicie uma nova transação com o componente IBTransaction antes de trazer os dados ao IBQuery.
Assim, realizando a consulta utlizando-se uma transação, os dados virão atualizados.
Assim, realizando a consulta utlizando-se uma transação, os dados virão atualizados.
GOSTEI 0
Tomcorreia
02/06/2003
Amigo, tive um problema muito grande com isto. Assim, como fiz:
1º Crie as seguintes funções:
procedure StartTransaction;
begin
dm1.Transaction1.Active := false;
dm1.Transaction1.StartTransaction;
dm1.Transaction1.Active := true;
end;
procedure CommitTransaction;
begin
dm1.Transaction1.CommitRetaining;
dm1.Transaction1.Active := False;
dm1.Transaction1.Active := True;
end;
procedure RollbackTransaction;
begin
dm1.Transaction1.Rollback;
dm1.Transaction1.Active := False;
dm1.Transaction1.Active := True;
end;
2º Dando um duplo click em ibtransaction escolha a opção Read Comitted
3º Ao incluir, escluir ou atualizar, ou seja: insert, update, delete use o seguinte:
StartTransaction;
dm1.Query1.Close;
dm1.Query1.Sql.Text := ´insert into cliente(clicod) values(:codigo)´;
.
.
.
dm1.Query1.ExecSql;
CommitTransaction;
Qualquer duvida:
icq: 162211254
1º Crie as seguintes funções:
procedure StartTransaction;
begin
dm1.Transaction1.Active := false;
dm1.Transaction1.StartTransaction;
dm1.Transaction1.Active := true;
end;
procedure CommitTransaction;
begin
dm1.Transaction1.CommitRetaining;
dm1.Transaction1.Active := False;
dm1.Transaction1.Active := True;
end;
procedure RollbackTransaction;
begin
dm1.Transaction1.Rollback;
dm1.Transaction1.Active := False;
dm1.Transaction1.Active := True;
end;
2º Dando um duplo click em ibtransaction escolha a opção Read Comitted
3º Ao incluir, escluir ou atualizar, ou seja: insert, update, delete use o seguinte:
StartTransaction;
dm1.Query1.Close;
dm1.Query1.Sql.Text := ´insert into cliente(clicod) values(:codigo)´;
.
.
.
dm1.Query1.ExecSql;
CommitTransaction;
Qualquer duvida:
icq: 162211254
GOSTEI 0