You are on page 1of 4

Aprendende delphi/ mysql com essa dica

cadastra, exclui, pesquisa, e visualiza


num dbgrid
Cdigo
1) Criar um Bd no MySQL
esse o bd que vamos usar bem simples

create database ALUNJS;

use alunos;

create table dados
(
nome varchar(50),
idade int

);

table: DADJS
nome varchar(50)
idade int


2) Acessar o Delphi

3) Criar uma Nova Aplicao

4) Criar um Data Module
File / New / Data MJdule

5) Incluir componentes de acesso ao BD no Data Module

1) Incluir um SQLConnection (na Aba DbExpress)
2) Clique 2x no SQLConnection
3) Clique no Botao (+)
4) Preencher na caixa aberta os campos:
- Driver Name : MySQL
- Connection Name: o nome do BD (neste caso Alunos)
5) ALterar as propriedades da conexo criada:
- HostName: 127.0.0.1
- DataBase: o nome do BD (neste caso Alunos)
- User_name: root
- Password: em branco
(obs.: as propriedades hostname, user_name e password
sempre sero preenchidas
desta maneira)
6) Alterar a propriedade VendorLib do SQLConnection para
c:mysqllibdebuglibmysql.dll
(obs.: esta propriedade est no Jbject Inspector)
7) Alterar a propriedade LoginPrompt do SQLConnection para
false
(obs.: esta propriedade est no Jbject Inspector)
8) ALterar a propriedade Connected do SQLConnection para
true
(obs.: esta propriedade est no Jbject Inspector)


9) Incluir um SQLQUery para cada tabela do meu BD
- Alterar a propriedade SQLCJnnection para
SQLConnection1
- Alterar a propriedade SQL para:
select from dados
(obs.: cada tabela deve ter um SQLQuery)
- Alterar a propriedade Active para:
true

6) Criar no Form a tela para cadastrar dados:

1) Dois Labels, dois edits e um boto

7) BJto Cadastrar

1) Clique 2x no boto
2) Escreva o cdigo abaixo
// desligando a Query
DataModule2.SQLQuery1.Active := false;

// limpando a Query
DataModule2.SQLQuery1.SQL.Clear;

// escrever novo comando SQL
DataModule2.SQLQuery1.SQL.Add('insert into dados
values("'+edit1.Text+'",'+edit2.text+')');

// ligando a Query
DataModule2.SQLQuery1.ExecSQL();

8) Incluir mais um Label, um Edit e um boto para fazer o excluir por
nome

9) Boto Excluir por nome

1) Clique 2x no boto
2) Excreva o cdigo abaixo
// desligando a Query
DataModule2.SQLQuery1.Active := false;

// limpando a Query
DataModule2.SQLQuery1.SQL.Clear;

// escrever novo comando SQL
DataModule2.SQLQuery1.SQL.Add('delete from dados
where nome ="'+edit3.Text+'"');

// ligando a Query
DataModule2.SQLQuery1.ExecSQL();


10) Incluir mais um Label, um Edit e um boto para fazer o excluir por
idade

9) Boto Excluir por idade

1) Clique 2x no boto
2) Excreva o cdigo abaixo
// desligando a Query
DataModule2.SQLQuery1.Active := false;

// limpando a Query
DataModule2.SQLQuery1.SQL.Clear;

// escrever novo comando SQL
DataModule2.SQLQuery1.SQL.Add('delete from dados
where idade ='+edit4.Text);

// ligando a Query
DataModule2.SQLQuery1.ExecSQL();

10) Visualizando dados no DBGrid

1) No form fazer:
- Incluir no form um componente DataSource (1
componente da Aba DataAccess)
- Incluir no form um componente DBGrid (1 componente
da Aba DatControl)

2) No DataModule fazer:
- Incluir um DataSetProvider (componente da Aba
DataAccess)
- Alterar a propriedade DataSet para SQLQuery1
- Incluir um ClientDataSet (componente da Aba
DataAccess)
- Alterar as propriedades:
- ProviderName : DataSetProvider1
- Active : true

3) No form linkar os componentes j inseridos
- No DBGrid alterar a propriedade DataSource para
DataSource1
- No DataSource alterar a propriedade DataSet para
DataModule2.ClientDataSet1

11) Para atualizar o DBGrid necessrio uma sequencia de passos, pois
o ClientDataSet tira uma
foto do SQLQuery e a cada atualizao da tabela (SQLQuery)
necessria uma nova foto

1) Colocar um boto Atualizar no form

- clique 2x no boto
- Excreva o cdigo abaixo
// desligando a Query e o ClientDataSet
DataModule2.SQLQuery1.Active := false;
DataModule2.ClientDataSet1.Active :=
false;

// limpando a Query
DataModule2.SQLQuery1.SQL.Clear;

// escrever novo comando SQL
DataModule2.SQLQuery1.SQL.Add('select
from dados');

// ligando a Query
DataModule2.SQLQuery1.Active := true;
DataModule2.ClientDataSet1.Active := true;

You might also like