Fórum Qual é a diferença entre... #340204

10/04/2007

0

Olá amigos estou com uma dúvida, estou usando o IBX para fazer um programa simples e quando fui usar um comando surgiu a dúvida...

Qual a diferença em usar,
DM.qProduto.FieldByName(´NOME_PRO´).Value := ´PÃO´;

e,
DM.qProdutoNOME_PRO.Value := ´PÃO´;


é isto ai pessoal,


Obrigado :wink:


Rodrigorpb

Rodrigorpb

Responder

Posts

10/04/2007

Arc

DM.qProdutoNOME_PRO.Value := ´PÃO´;
aqui vc adicionou os campos no componente, eles ficam declarados na sua classe, vc consegue fazer referencia ao campo.


DM.qProduto.FieldByName(´NOME_PRO´).Value := ´PÃO´;
aqui vc usa o nome logico mesmo, que ta no seu select

acredito que seja isso


Responder

Gostei + 0

10/04/2007

Rodrigorpb

Qual seria o melhor para ser usado com Post?


Responder

Gostei + 0

11/04/2007

Marcelo

Rodrigorpb,

Qualquer um funciona adequadamente, o que pode variar é o acesso as informações do banco (post, delete, cancel, etc. ); Para ter certeza de qual é melhor (mais rápido), faça um teste de verificação.
Crie uma simulação de post em ambos os casos, sendo um de cada vez é claro, onde você poderá medir qual é mais eficiente. Ex.:
// teste de insert...
var
 t: TDateTime;
 i: Word;
begin
  t := now();
  for i := 1 to 1000 do
    begin
      DM.qProduto.Insert();
      DM.qProdutoNOME_PRO.Value := ´PÃO´;
      DM.qProduto.Post();
    end;
  showmessage( formatdatetime( ´zzzz´, now() - t ));
end;
Depois faça o mesmo, mas com o outro metodo:
// teste de insert...
var
 t: TDateTime;
 i: Word;
begin
  t := now();
  for i := 1 to 1000 do
    begin
      DM.qProduto.Insert();
      DM.qProduto.FieldByName(´NOME_PRO´).Value := ´PÃO´;
      DM.qProduto.Post();
    end;
  showmessage( formatdatetime( ´zzzz´, now() - t ));
end;
Para obter sucesso nesse teste, faça-o várias vezes e nas mesmas condições, isto é, para cada teste, a tabela tem que estar totalmente vazia.

Apos seu teste, poste aqui o resultado que encontrou.

Espero ter judado...

Obs.: Caso tenha algum erro no codigo, faça os devidos ajuster, pois o escrevi tm testar, ok?!?


Responder

Gostei + 0

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

Aceitar