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.