Melhor forma de Inserir e Atualizar dados

Firebird

08/01/2006

conversando com um amigo, ele diz que prefere fazer a atualização e a inserção de registro através de Procedures, que, segundo ele, o desempenho é bem melhor.
um outro amigo diz que prefere usar o SQLUpdate mesmo. alega que é bem mais prático e a diferença não é perceptível. acha que é melhor custo/benefício.

e então pessoal, qual a forma que vocês preferem?
a procedure é bem amsi rápido mesmo?
o SQLUpdate é bem mais prático mesmo?


Raserafim

Raserafim

Curtidas 0

Respostas

Afarias

Afarias

08/01/2006

|conversando com um amigo, ele diz que prefere fazer a atualização e a
|inserção de registro através de Procedures, que, segundo ele, o
|desempenho é bem melhor.

Não, não é. Executar um INSERT ou um Procedimento que tem 1 INSERT é praticamente a mesma coisa. Pode fazer um teste para ver.


|um outro amigo diz que prefere usar o SQLUpdate mesmo. alega que é
|bem mais prático e a diferença não é perceptível.

Um método não exclui o outro. Vc pode perfeitamente usar o SQLUpdate com procedimentos por exemplo.


|e então pessoal, qual a forma que vocês preferem?
|a procedure é bem amsi rápido mesmo?
|o SQLUpdate é bem mais prático mesmo?

bom, vamos separar 1º as coisas ... vc pode fazer uma inclusão usando:

um INSERT ou um PROCEDIMENTO (que vai chamar um insert) -- neste caso dá no mesmo

agora, vc pode executar 1 dos 2 acima via um UpdateSQL ou diretamente usando um componente Query ou StoredProc na mão, e ai o UpdateSQL é mais simples (prático) mas isso não quer dizer que é melhor -- aplicações grandes, aplicando conceitos OO vão utilizar (geralmente) a prática de executar os códigos ´na mão´.


T+


GOSTEI 0
Raserafim

Raserafim

08/01/2006

para aplicações em que o desempenho é fundamental, como no exemplo que vc deu para aplicações grandes. fazer na mão significa não usar componentes DataWares? ou seja, para evitar tráfego na rede é realmente necessário usar edit´s ao invés de dbedit´s?


GOSTEI 0
Afarias

Afarias

08/01/2006

|para aplicações em que o desempenho é fundamental, como no exemplo
|que vc deu para aplicações grandes. fazer na mão significa não usar
|componentes DataWares?

geralmente sim.

mas não usar controles DataWare não impacta na performance da aplicação, mas sim na ´organização´ (ou ´manutenabilidade´)


|ou seja, para evitar tráfego na rede é realmente necessário usar edit´s
|ao invés de dbedit´s?

não. usar ou não controles DataWare não faz diferença neste aspecto.

Para isso é necessário apenas conhecer as (boas) práticas para construção de aplicações Cliente/Servidor.


T+


GOSTEI 0
Raserafim

Raserafim

08/01/2006

ja li algo que dizia que usando os ClientDataSet, unia o melhor dos dois mundos. mas não explicava muito legal não. ou seja, eu teria o mesmo efeito e desempenho dos Edit´s, mas sem a ´complicação´ (ou trabalho) deles.
alguém poderia esclarecer isso? como usar?
ou o q o ClientDataSet pode contribuir neste processo?


GOSTEI 0
POSTAR