Componentes Data. Usar ou não ?

10/08/2004

0

Ouvi muitas vezes que os componentes data, no caso dbedits, dbgrids, deixam a aplicação mais carregada, prejudicando o sistema. Qual seria solução então, utilizar os componentes edit, combos, stringgrid, e alimenta-los com os dados manualmente e sempre usar query no lugar de table.
Isto torna o desenvolvimento mais demorado, e um pouco arduo. No caso do dbexpress é necessário três componentes sqldataset, datasetprovider e clientdateset, sendo dos dois ultimos para a navegação.
Faço todas as movimentações do banco, então utilizando o sqldataset (inserções, exclusões, updates) e reativo quando finalizo o movimento.
O que seria certo usar?, o que vc usam?, por exemplo, poderia colocar em meu programa clientdataset.insert e depois alimentar os campos (clientdataset.fieldbyname(´nome´).value := edit1.text) ? seria certo isto ? com o sqldataset posso trabalhar com quantos campos eu quiser (insert into cliente (nome) values(:nome)), porém da mesma forma preciso passar os parametros (sqldataset.parambyname(´nome´).value := edit1.text) neste caso estaria especificando somente um campo e não dando insert no registro todo. O quanto eu ganho de performance ? Gostaria que vcs me ajudassem nesta decisão.
Grato


Edumarc

Edumarc

Responder

Posts

10/08/2004

Okama

Não fiz teste de performance para saber qual é melhor. Eu prefiro o trabalho mais árduo, como já comentei em outro post e deixo claro que é questão de preferência.

Usando Edits eu controlo todo o preenchimento do componente, faço a validação com máscaras, preencho outros edits automaticamente com o query fechado.

Depois atualizo em um único SQL, não preciso passar parâmetros uso a cláusula ´where´ como ´update tabela set nome=´João´ where codigo = 1´

Dá pra fazer tudo isso com DBEdit e mais rápido, mas eu prefiro controlar os campos e posso fazer isso sem conexão com o banco.


Responder

11/08/2004

Bruno Belchior

cara eu ultilizo dessa forma q vc disse ou seja primeiro Coloco o DataSet em Modo de Inserção ou seja DM.QryClientes.Append e depois mando os valores para os campos (fields) do DataSet DM.QryClientesNome.AsSting := EdNome.Text e por fim finalizo fazendo as validações de campos como bem quizer evitando assim excessões indezejadas e outras desvantagens dos componentes Data e por falar nisso uso a dobradinha TQuery+TUpdateSQL que juntos enviam as atualizações ´Append, Insert, Post´ exatamente como instrução SQL só que automaticamente... Espero ter ajudado...


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar