"Select" e "Update" com Query em Memória (BDE)

Cada vez mais nos deparamos com situações em que precisamos ter uma solução para deixar nossa aplicação dinâmica para facilitar o uso. Hoje vou mostrar uma maneira simples de manipular os dados do database.


Bem vindos!

Cada vez mais nos deparamos com situações em que precisamos ter uma solução para deixar nossa aplicação dinâmica para facilitar o uso. Hoje vou mostrar uma maneira simples de manipular os dados do database.



"Select" no Banco de dados com Query em Memória
(O exemplo está sendo baseado em conexão via BDE):

procedure TForm1.dadosMemoria1;
var
  qryTemp: TQuery; //declara a classe TQuery para o objeto qryTemp.
  vSNomeCliente: String;
begin
  //cria o objeto TQuery.
  qryTemp := TQuery.Create(nil);
  with qryTemp do
  begin
    //Nome da conexão.
    DatabaseName := ''''nomeConexao'''';
    Close;
    Sql.Clear;
    //Consulta simples no banco de dados que retorna o cliente de código 1.
    Sql.Add(''''Select *'''');
    Sql.Add(''''From clientes'''');
    Sql.Add(''''Where cliCodigo = :codigo'''');
    ParamByName(''''codigo'''').AsInteger := 1;
    if not Prepared then
      Prepare;
    Open;
  end;
  //A variável do tipo string recebe o campo nome do banco de dados.
  vSNomeCliente := qryTemp.FieldByName(''''cliNome'''').AsString;
  //Limpa a query que estava em memória.
  qryTemp.Free;
end;

Update no Banco de Dados com Query em Memória
(O exemplo está sendo baseado em conexão via BDE):

procedure TForm1.dadosMemoria2;
var
  qryTemp: TQuery; //declara a classe TQuery para o objeto qryTemp.
begin
  //cria o objeto TQuery.
  qryTemp := TQuery.Create(nil);
  with qryTemp do
  begin
    //Nome da conexão.
    DatabaseName := ''''nomeConexao'''';
    Close;
    Sql.Clear;
    //Update simples no banco de dados que define o nome Teste para o cliente de código 1.
    Sql.Add(''''Update clientes'''');
    Sql.Add(''''Set cliNome = :nome'''');
    Sql.Add(''''Where cliCodigo = :codigo'''');
    ParamByName(''''nome'''').AsString := ''''Teste'''';
    ParamByName(''''codigo'''').AsInteger := 1;
    ExecSql;
  end;
  //Limpa a query que estava em memória.
  qryTemp.Free;
end;

Qualquer dúvida estou a disposição.


Ebook exclusivo
Dê um upgrade no início da sua jornada. Crie sua conta grátis e baixe o e-book

Artigos relacionados