terça-feira, 1 de julho de 2008

Consulta na base de dados

Devido à falta de informação sobre o assunto, vou explicar como se pode fazer uma consulta a uma base de dados em Mysql 5, utilizando o Lazarus.

É necessario para fazer uma consulta, inserir dados ou para remover dados, ter o componente Dataset.
O Dataset serve para alojar toda a informação do componente SQLQUERY1 é com este componente que é feita a comunicação com o SQLQUERY1 que de seguida comunica com a base de dados.


















É necessário também ter o componente TDBGrid que serve para mostrar ao utilizador a query realizada esta pode também ser mostrada por um memo mas o Grid apresenta um sistema de tabela muito mais simples o que torna mais facil a consulta.

Para se tornar mais facil a pesquisa decidi activar o evento OnCreate do form colocando depois o seguinte codigo que passo a explicar:

procedure TForm10.FormCreate(Sender: TObject);
begin
Form1.SQLQuery1.Close;
Form1.SQLQuery1.ParseSQL:=true;
Form1.SQLQuery1.ReadOnly:=false;
Form1.SQLQuery1.SQL.Text := 'select cod_participante,nome from participante';
Form1.SQLQuery1.Open;
end;

A explicação do código é bastante simples, passo a explicar:

"Form1.SQLQuery1.Close;" - Serve para fechar uma consulta em aberto anteriormente isto é necessário porque senão vai dar um erro de uma dataset em aberto.

"Form1.SQLQuery1.ParseSQL:=true;
Form1.SQLQuery1.ReadOnly:=false;" - Isto vai alterar as propriedades do SQLQUERY1, é o que vai possibilitar a leitura da sintax que vamos introduzir.

"Form1.SQLQuery1.SQL.Text := 'select cod_participante,nome from participante';" - É aqui que se introduz a sintax SQL, que vai ser introduzida na componente SQLQUERY1 que vai transportá-la para o mysql efectuando assim a consulta.

"Form1.SQLQuery1.Open;" - Serve para entrar em comunicação e realizar a consulta na base de dados em mysql, este código faz com que a consulta auto comunique com o componete TBDGrid e faz com que este apresente logo os resultados da consulta.

Nota: Todo o código é antecedido por Form1 porque todos os componentes a que se fazem referência devem estar no form1 que é o form da conecção isto tem a vantagem de não ser necessário num programa grande estarmos em todos os forms a inserir os três componentes de conecção e consulta da base de dados.

Nenhum comentário: