19/11/2005

Cadastrar na Query ou no ClientDataSet?

em um cadastro, por exemplo de clientes, é mais vantagem (ou tem mais benefícios) usar o componente ClienteDataSet para servir de entrada de dados e depois dar um ApplyUpdates para enviar os dados para a tabela, ou é melhor usar direto a Query para fazer isso?
Qual a vantagem eu teria em usar o ClientDataSet?


Raserafim

Respostas

19/11/2005

Firekiller

Na minha opinião você tem 3 vantagens:

1. Transações ficarem abertas menos tempo;

2. Fácil mudança de banco de dados e/ou componentes de conexão com banco (essa é a melhor delas) e

3. Aproveitar criação de campos do tipo Aggregate e InternalCalc.

Se o que deseja é usar comandos SQL, pode usá-los no CLientDataSet também. Basta que para isso, você coloque a propriedade poAllowCommandText do DataSetProvider para true.


Responder Citar

22/11/2005

Raserafim

essa da portabilidade realmente é uma grande vantagem.
e acho q também seria um passo a frente para fazer um sistema em camadas né?

sempre q uso o ClientDataSet utilizo tb uma Query para colocar as instruções SQL nela. Se eu utilizar a propriedade do ClientDataSet CommandText para colocar as instruções SQL, posso descartar completamente a Query sem nenhuma desvantagem?
ou tem algum benefício de ter a Query como intermediário?


Responder Citar

23/11/2005

Raserafim

se eu utilizar o ClientDataSet, ao o usuário abrir um registro do cadastro de um determinado cliente, e um outro usuário (que está em rede) abrir o cadastro do mesmo cliente.
como posso fazer o controle de concorrência para evitar que os dois alterem o mesmo registro ao mesmo tempo?
ou seja, como saber que um determinado registro está sendo utilizado?


Responder Citar

30/12/2005

Raserafim

como bloquear um registro que está sendo acessado?


Responder Citar