Vous êtes sur la page 1sur 81

Instalando o Lazarus e outros sistemas de suporte

Prof. Vitor H. Migoto de Gouva


Colgio IDESA 2011
Edio 1 Levante e ande - Instalando o Lazarus e outros sistemas de suporte.
Ano: 02/2011

Nesta Edio
Introduo ..................................................................................................................................... 1
Onde conseguir os nossos Softwares ............................................................................................ 1
Instalando o Lazarus...................................................................................................................... 2
Instalando o AppServ .................................................................................................................... 5
Instalando o HeidiSQL ................................................................................................................... 8
Configurando o HeidiSQL para acessar a base de dados MySQL ................................................ 10
Veja nas prximas edies .......................................................................................................... 13

Introduo
Caros alunos, vamos a partir desta apostila dar o primeiro passo para a utilizao do software
Lazarus e comear a desenvolver novos sistemas com nfase em Banco de Dados juntamente
com a ajuda de mais outras duas ferramentas: o Appserv e o Heidi SQL.
Em conjunto estas ferramentas iro nos auxiliar na criao e administrao de Bancos de
Dados que iro aumentar significativamente o uso dos nossos sistemas e os tornaro
extremamente teis na funo de analise e armazenamento de informaes.

Onde conseguir os nossos Softwares


Para comearmos vamos aprender onde conseguir cada um destes softwares. Os aplicativos
que iremos utilizar em nossas aulas podero ser encontrados a partir de link`s em meu site
(www.idesa.com.br/vitor) no menu Ling. de Programao, mas caso esteja procurando o
website oficial de cada aplicativo voc pode acessar os seguintes links que viro logo a seguir
desta apostila.

Os trs programas que iremos utilizar seguem abaixo juntamente com os seus sites oficiais:

Lazarus - http://www.lazarus.freepascal.org/
App Serv - http://www.appservnetwork.com/
Heid SQL - http://www.heidisql.com/

Para que todos saibam, at o presente momento todos estes trs softwares so de origem
gratuita, ento isso os torna ferramentas de grande facilidade de obteno e desenvolvimento.
Continuando nossa instalao, faa o download dos trs programas e os mantenha em um
local em que voc possa acessar facilmente para caso necessite fazer uma futura reinstalao.

Instalando o Lazarus
Para comear a instalao do Lazarus clique inicialmente duas vezes sobre o seu instalador.
(Nota: Antes de baixar verifique se baixou o arquivo adequado para o seu sistema. Em nosso
caso como rodaremos em sistema Windows, baixe o arquivo Windows 32 bits.)

1. Na primeira tela escolha o idioma em que deseja instalar o software, escolha a opo
Portugus (Brasil) e clique em OK.
2. Na prxima tela clique Avanar.
3. O prximo passo escolher o local onde deseja instalar o programa, se desejar pode
manter a opo em que o instalador optou, na unidade C:\lazarus. Aps feito clique
em Avanar.
4. Escolha nesta tela na primeira caixa de seleo a opo Instalao Completa e clique
em Avanar.

5. A prxima tela ir perguntar onde deseja colocar um atalho do programa, voc pode
manter a pasta definida pelo instalador e clicar em Avanar.
6. Logo depois voc ir escolher se deseja criar um atalho na sua rea de Trabalho, faa
sua opo e clique em avanar.
7. Agora voc ver todas as escolhas realizadas para instalao, caso concorde e no
queira mudar nenhuma opo clique em Instalar e aguarde a extrao dos arquivos
para a finalizao da instalao.

8. Aps terminar a extrao e copia dos arquivos, estar concluda a instalao do


Lazarus. Em sua tela final clique em Concluir.

A partir de agora voc poder acessar o programa atravs do Menu iniciar > Todos os
Programas > Lazarus > Lazarus.

Instalando o AppServ
Para podermos trabalhar com o banco de dados mysql , vamos precisar de um sistema
servidor para controlar ento a execuo e armazenamento dos dados, para isto vamos contar
com a ajuda do AppServ, que alem de possuir o MySql tambm permite a execuo de pginas
em Linguagem PHP.
Vamos a seguir aos passos de instalao:
Nota: Durante a instalao do AppServ pode ser solicitada a permisso de execuo de
alguns servios por algum software antivrus ou firewall instalado em sua mquina. Essa
solicitao se faz presente, pois ele precisa de acesso a alguma porta que talvez o antivrus
acredite ser uma ameaa. Neste caso pode permitir a execuo, pois isso se faz necessrio
para a concluso perfeita da instalao. Utilizo este programa h muito tempo e ele
extremamente conhecido e confivel para uso por inmeros programadores.
1. Para darmos inicio clique duas vezes no instalador do AppServ.
2. Na primeira tela clique no boto Next.
3. Agora clique na opo I Agree, caso concorde com a licena do software, para
continuar a instalao.
4. Nesta tela voc pode selecionar o local de instalao do aplicativo, caso no queira
mudar, pode manter o local em C:\Appserv.
5. Agora voc poder escolher os pacotes que deseja instalar em seu computador.
Iremos utilizar somente o Mysql, mas acho muito til a instalao de todos os pacotes,
pois futuramente voc poder utiliz-los em outro momento do curso. Para continuar
clique em Next.

6. Nesta tela agora voc precisar preencher os campos de acordo com a imagem abaixo
e clicar em Next.

7. Agora voc precisa digitar uma senha para o usurio do banco de dados, preencha
ento o campo da senha e da confirmao de senha e marque as duas caixas de
seleo abaixo assim como na imagem a seguir. Posteriormente clique em Install para
continuar com a instalao do aplicativo.

8. Durante a instalao talvez o firewall do Windows ou algum outro firewall instalado ir


pedir para desbloquear o Servidor Apache. Clique em Desbloquear.

9. Agora s manter as duas caixas de seleo marcadas e clicar em Finish para concluir
a instalao e j iniciar o servidor Apache e Mysql.

Instalando o HeidiSQL
Para podermos visualizar os dados armazenados em nossos bancos de dados, criar tabelas,
editar dados , excluir dados e enfim gerenciar todo o nosso ambiente Mysql, vamos precisar de
uma ferramenta gerenciadora , e esta o HeidiSQL. Nosso sistema gerenciador de banco de
dados ( SGBD ) ir permitir que eu acesse meus dados e faa todas as aes que eu precisar
para preparar o banco para receber os dados dos meus usurios pelo meu programa
desenvolvido em Lazarus. Vamos agora ver como instala-lo:
1. Primeiramente clique duas vezes sobre o instalador do HeidiSQL.
2. Na primeira tela clique em Next.
3. Agora marque a opo I accept the agreement e logo depois clique em Next para
podermos prosseguir com a instalao.

4. Agora voc pode definir o local de instalao do programa, por padro voc pode
manter o local definido pelo prprio programa, e ento pressione Next.
5. Escolha onde deseja criar um cone do programa e em seguida clique em Next.

6. Escolha se deseja criar um cone na rea de trabalho e mantenha as prximas 3 caixas


marcadas para ligarmos todos os arquivos de extenso SQL com o Heidi e tambm
para podermos manter nosso software sempre atualizado. Novamente aps as
escolhas pressione Next.

7. Agora confira nesta tela se suas escolhas esto corretas e se estiver tudo certo, clique
em Install.
8. Aps instalar os arquivos desmarque as duas ultimas caixas de seleo e clique em
Finish para finalizar a instalao do aplicativo.

Configurando o HeidiSQL para acessar a base de dados MySQL


Depois de instalar todos os programas , vamos aprender agora a configurar o HeidiSQL para
conectar a minha base de dados MYSQL que acabamos de instalar. Siga os passos para poder
configurar corretamente o HeidiSQL para acessar seu servidor.
1. Clique duas vezes no atalho do HeidiSQL para abri-lo.
2. Quando abrir o programa voc ir visualizar a janela de controle de sesses de
conexo. Esta janela permite voc configurar diversas conexes com diversos
servidores, porem para ns s iremos criar uma conexo para acessarmos o nosso
servidor local. Para comear clique no boto New no canto inferior esquerdo desta
janela.

10

3. Depois de apertar o boto New voc ver a tela abaixo pedindo alguns dados para a
nossa conexo. Caso voc queira dar um nome a nossa conexo s clicar uma vez
sobre o nome Unnamed na coluna a esquerda da janela, e ento voc poder dar o
nome que quiser.

4. As configuraes que devero ser colocadas so idnticas a originalmente iniciada


nesta janela, com a diferena que o campo Password dever ser preenchido com a
senha definida na janela
da imagem ao lado no
momento em que voc
estava
instalando
o
AppServ .
5. No
nosso
campo
hostname ser colocado o
IP 127.0.0.1 ou o nome
localhost,
pois
isto
informa que o nosso
servidor est na mesma
maquina em que eu estou
neste momento. Caso voc
queira
acessar
outro
servidor em outro lugar na
sua rede ou na internet, neste campo voc dever colocar o endereo do local onde o
servidor est como, por exemplo, escrevendo o IP do servidor em que est o banco de
dados.
6. No campo User utilizaremos o nosso usurio root que o usurio que possui acesso
total ao nosso banco, e no campo Port manteremos o valor 3306 que a porta padro
de acesso ao banco de dados MySQL.

11

7. Aps realizar todas estas configuraes s clicar no boto Save ao lado inferior
esquerdo para salvar as configuraes e para entrar no banco de dados s clicar em
Open.
8. Ento voc se conectar ao seu servidor MySQL permitindo a construo de Bancos e
tabelas e demais operaes com os dados na tela que voc v logo abaixo.

9. Na tela do SGBD voc encontrar do lado esquerdo os Bancos de Dados e suas


respectivas Tabelas, em um modelo de gerenciamento de arquivos como o Windows
Explorer, existentes no seu servidor. Ao lado direito temos as abas de acesso a opes
de gerenciamento das tabelas e aos dados das mesmas.
10. Clicando com o boto direito nos banco de dados pode-se achar a opo Create New
que vai nos permitir criar novas tabelas e depois para elas novos campos, mas isto ser
visto na prxima edio de nossa aula virtual.

12

Veja nas prximas edies

Criando Banco de Dados, Tabelas e Campos atravs do HeidiSQL Pedreiros de


Informao.

Aprendendo a trabalhar com o Lazarus Meu primeiro programa

Revisando Sintaxes SQL SELECT * FROM Minha_Memria

Trabalhando com conexo ao banco de dados MySQL no Lazarus O Componente

Inserindo dados no Banco de Dados a partir do Lazarus Querys pra que te quero.

13

Criando Banco de Dados, Tabelas e Campos atravs do HeidiSQL

Prof. Vitor H. Migoto de Gouva


Colgio IDESA 2011

Edio 2 Pedreiros da Informao Criando Banco de Dados, Tabelas e Campos atravs do HeidiSQL
Ano: 03/2011

Nesta Edio
Introduo ......................................................................................................................................................................... 1
Lembrando de coisas importantes.................................................................................................................................... 1
Criando um novo Banco de Dados .................................................................................................................................... 3
Criando uma nova tabela dentro de meu Banco de Dados .............................................................................................. 4
Exportando os bancos de dados ....................................................................................................................................... 7
Importando arquivos SQL para criao de banco de dados ............................................................................................. 8
Veja nas prximas edies ................................................................................................................................................ 9

Introduo
Aps observarmos na edio anterior o acompanhamento de toda a instalao dos softwares
que usaremos, passa a ser essencial que saibamos utilizar inicialmente o nosso gerenciador de
banco de dados para que possamos criar e gerar os bancos de dados que iremos utilizar em
conjunto com o Lazarus.
Vamos ver ento o processo de criao de banco, tabelas e campos usando para isso o
software HeidiSQL.

Lembrando de coisas importantes


Para iniciarmos o processo de criao do banco precisamos acessar nosso servidor atravs do
HeidSQL. Abra o programa e ento se lembre da etapa em que criamos a conexo com o mysql
na edio anterior na janela abaixo.

No ambiente em que criamos a conexo e que voc definiu a senha que havia configurado na
instalao do AppServ, clique na sesso salva do lado esquerdo da janela e aperte Open.

Se tudo der certo voc ver a janela que vem a seguir com os bancos que j existem no Mysql
ao lado esquerdo da janela, abaixo ver uma pequena janela onde podemos acompanhar
todos os cdigos SQL que so executados a cada movimentao que fizemos nos bancos.

Bancos de Dados que j


existem no Mysql

Criando um novo Banco de Dados


Para criarmos o nosso primeiro Banco de Dados voc ir clicar com o boto direito do mouse,
no primeiro item da lista dos bancos que voc est vendo a sua esquerda, aps isso lique em
Create new > Database.

Aps clicar ir aparecer uma janela onde voc dever definir o nome do banco de dados que
deseja criar, no nosso exemplo voc observa o nome como meu_banco.

As prximas duas opes falam a respeito do formato de caracteres que desejamos para o
nosso banco, neste caso mantenha as opes padres que estiverem aparecendo, e em
seguida clique em OK. Neste momento ser ento criado o banco de dados especificado, para
editar o banco ou excluir s clicar com o boto direito sobre o nome do banco de dados
escolhido e selecionar a opo Edit ( para alterar alguma opo ) ou Drop ( para excluir o
banco selecionado).

Criando uma nova tabela dentro de meu Banco de Dados


Para criarmos uma nova tabela clique com o boto direito sobre o banco de dados pretendido
e v at a opo Create new > Table.

Quando clicar no boto ir aparecer no painel do lado direito uma opo Name que onde
voc ir colocar o nome da tabela que est criando agora. Logo mais abaixo ver um espao
em branco chamado Columns e logo a frente da palavra ver um boto Add, este boto servir
para adicionarmos os campos que vamos precisar dentro de nossa tabela.

A cada vez que clicar no boto Add ser criada ento uma linha para ser preenchida as opes
dos campos. Nestas opes as que mais usaremos sero as opes Name( para definir o nome
do campo), Datatype( para definir o tipo de dado que o campo guardar) , Lenght/Set (
usaremos para definir o tamanho dos campos), Allow NULL ( para definir se o campo pode ou
no ser nulo) e Default ( ser utilizado para especificar opes de auto incremento) .
Crie o nome da tabela e os primeiros campos de exemplo como na imagem abaixo:

Aps criar os campos clique com o boto direito sobre o campo cdigo e v at a opo Create
new ndex > Primary , para definir o campo cdigo de nossa tabela como chave primria.

Depois que marcar como chave primria, clique em Save logo abaixo para criar ento os
campos em nossa tabela e depois ao clicar na aba superior Data voc ter acesso para
adicionar dados j em nosso banco.

Na rea de Data voc pode utilizar a barra de ferramentas superior para adicionar, remover, e
alterar os dados adicionados nos campos do nosso banco de dados.
Atravs destes botes voc poder inserir novos dados, remover dados, e
permitir ou no as alteraes realizadas nos dados.

Exportando os bancos de dados


Depois que criamos nosso banco de dado podemos export-lo em forma de script SQL para
caso precisarmos criar o mesmo em outro servidor ou at mesmo para guardar em forma de
backup. O processo de gerar o arquivo SQL do banco de dados com todas suas informaes e
dados inseridos nele chamamos de Exportao ou Export.
Depois do banco criado simples export-lo, apenas clique com o boto direito sobre o banco
de dados escolhido e clique na opo Export database as SQL . Ao fazer isso ele ir abrir uma
janela como a mostrada logo abaixo, onde voc poder escolher qual banco deseja exportar,
quais tabelas deste banco voc deseja exportar, dentre outras opes. Para no haver
problemas mantenha as opes que voc ver na imagem a seguir.

Logo a direita superior voc verifica que foi marcado a opo CREATE para o Database e as
Tables, isto faz com que seja gerado o script para criao do banco e das tabelas, na opo
Data voc ver algumas outras opes sobre como os dados devero ser criados:

No data No cria o script da insero dos dados j existentes no banco


DELETE + INSERT Cria scripts de deleo dos dados e depois gera a insero para
evitar que dados iguais sejam adicionados.
INSERT Somente cria o script de insero dos dados
INSERT IGNORE Cria o script de insero dos dados sem atualizar os dados j
existentes
REPLACE Cria o script de insero dos dados e atualiza os dados, caso estes j
existam no banco.
7

Logo abaixo voc ver a opo Filename que o local onde ser salvo o arquivo SQL, para
selecionar o local s clicar no boto logo a frente da caixa , aps configurar tudo isso s
clicar em export e ento o arquivo ser criado no local indicado. Este arquivo pode ser aberto
pelo prprio HeidiSQL ou atravs do bloco de notas, ento voc ver todos os scripts SQL
gerados para a criao do seu banco de dados.

Importando arquivos SQL para criao de banco de dados


Se voc j tiver um arquivo SQL voc poder import-lo para criar ento seu banco ou inserir
os dados necessrios. Para importar os dados SQL muito mais simples que export-lo, voc
clicar no menu superior na opo Import > Load SQL file ento ir selecionar o arquivo
desejado e clicar em Abrir , feito isso s pressionar a tecla F9 ou ento clicar na seta azul logo
acima na barra de ferramentas para executar a importao do script e sua execuo como na
imagem abaixo.
Boto de execuo do Script SQL

Com isso terminamos mais esta edio de nosso material, aguardem o prximo material em
que iremos criar nosso primeiro projeto em Lazarus.

Veja nas prximas edies

Aprendendo a trabalhar com o Lazarus Meu primeiro programa

Revisando Sintaxes SQL SELECT * FROM Minha_Memria

Trabalhando com conexo ao banco de dados MySQL no Lazarus O Componente

Inserindo dados no Banco de Dados a partir do Lazarus Querys pra que te quero.

Aprendendo a trabalhar com o Lazarus

Prof. Vitor H. Migoto de Gouva


Colgio IDESA 2011

Edio 3 Meu primeiro Programa Aprendendo a trabalhar com o Lazarus


Ano: 03/2011

Nesta Edio
Introduo ......................................................................................................................................................................... 1
Conhecendo a rea de trabalho do Lazarus ..................................................................................................................... 1
reas importantes que iremos utilizar constantemente .................................................................................................. 3
Criando um novo projeto e aprendendo a salvar ............................................................................................................. 4
Trabalhando nosso primeiro projeto ................................................................................................................................ 6
Propriedades importantes do Form:............................................................................................................................. 6
Border Icons .............................................................................................................................................................. 6
Border Style............................................................................................................................................................... 6
Caption ...................................................................................................................................................................... 7
Color .......................................................................................................................................................................... 7
Cursor ........................................................................................................................................................................ 7
Enable........................................................................................................................................................................ 7
Font ........................................................................................................................................................................... 7
Icon............................................................................................................................................................................ 7
Name ......................................................................................................................................................................... 7
Position ..................................................................................................................................................................... 7
Windows State .......................................................................................................................................................... 7
Propriedades importantes do Edit ................................................................................................................................ 7
Alignment .................................................................................................................................................................. 7
Border Style............................................................................................................................................................... 7
CharCase ................................................................................................................................................................... 7
Color .......................................................................................................................................................................... 8
Echomode ................................................................................................................................................................. 8
Enable........................................................................................................................................................................ 8
Font ........................................................................................................................................................................... 8
MaxLenght ................................................................................................................................................................ 8
Name ......................................................................................................................................................................... 8
ReadOnly ................................................................................................................................................................... 8
Text............................................................................................................................................................................ 8
Visible ........................................................................................................................................................................ 8
Propriedades importantes do Button ........................................................................................................................... 8
Caption ...................................................................................................................................................................... 8
Color .......................................................................................................................................................................... 8
Enable........................................................................................................................................................................ 8
Font ........................................................................................................................................................................... 8

Name ......................................................................................................................................................................... 8
Visible ........................................................................................................................................................................ 8
Desenvolvendo nosso primeiro programa.................................................................................................................... 9
Propriedades do Form .............................................................................................................................................. 9
Propriedades do primeiro Edit .................................................................................................................................. 9
Propriedade do segundo Edit.................................................................................................................................... 9
Propriedade do Button ............................................................................................................................................. 9
Veja nas prximas edies .............................................................................................................................................. 12

Introduo
Aps trabalharmos algumas informaes bsicas que vocs precisam conter em suas mentes,
vamos comear a entender como funciona o Lazarus e ento iremos desenvolver um simples
programa para podermos praticar nossos conceitos.
Inicialmente vamos verificar o ambiente Lazarus e falar um pouco sobre propriedades de
alguns objetos e onde localizamos estes, e posteriormente comearemos com nosso primeiro
projeto.

Conhecendo a rea de trabalho do Lazarus


Vamos visualizar a rea de trabalho do Lazarus na imagem abaixo, sabendo que possumos 5
partes importantes que iremos conhecer.

1
3
1.
2.
3.
4.
5.

4
5

Palhetas de Objetos Onde encontraremos todos os objetos de nossas aplicaes.


Formulrio rea da nossa aplicao onde iremos trabalhar os nossos objetos.
Object Inspector Local onde iremos encontrar todas as propriedades dos objetos.
Source Editor Onde iremos programar os cdigos dos nossos programas.
Messages Local que exibir mensagens sobre a depurao de nossos programas.
1

Em primeiro lugar precisamos saber que nossos programas sero compostos por uma
diversidade de objetos, que serviro para diversas coisas. Um objeto como uma imensa
quantidade linhas de programao simplificadas h algumas propriedades que resultaro em
um determinado resultado. Os objetos foram criados para facilitar a vida na hora de
desenvolver alguns programas, varias programaes que eram utilizadas freqentemente em
todo programa foram definidas como objeto, a fim de que o programador no perdesse tempo
ao digitar sempre a mesma coisa a fim de obter um mesmo resultado.
Assim podemos ver um exemplo quando pensamos que sempre que o programador fosse
pedir um determinado dado a um usurio ele deveria digitar uma dzia de linhas de
programao, e agora essa dzia de linhas foi simplificada a um arrastar de um objeto Edit,
que faz uma caixa de texto para o usurio digitar tal informao, sem a necessidade de
adicionar nenhuma linha de cdigo.
Ento podemos imaginar que cada objeto como se fosse um programa que soluciona
pequenos problemas comuns na hora de desenvolver um programa maior.
Falando de objetos, podemos ver na rea nmero 1 mostrada na imagem acima a nossa
palheta de objetos. Nela vamos encontrar diversos tipos de objetos que iremos usar em
nossos programas, eles esto agrupados em palhetas que definem suas aplicaes. Para
adicionar um objeto s clicar nele e posteriormente clicar no nosso formulrio.
O formulrio (rea nmero 2 da imagem) tambm um objeto, que serve para agrupar os
objetos utilizados em nosso programa, assim como todo objeto ele tambm possui
propriedades e eventos que podem ser vistos na janela do Object Inspector( rea numero 3 da
imagem), que ir exibir toda propriedade e eventos dos objetos que selecionarmos.
Quando precisarmos definir alguma programao para utilizar as informaes colocadas nos
objetos iremos trabalhar na janela do Source Editor( rea numero 4 da imagem) ou janela de
Edio de Cdigo, que possui todos os cdigos contidos nos nossos programas que o faro ter
alguma funo.
Para terminar ao executar qualquer programa o Lazarus verifica se existem alguns erros em
nossa codificao e para nos avisar ele utiliza a janela Messages(rea numero 5 da imagem)
que ir exibir mensagens sobre erros ou problemas na hora de depurar e criar o nosso
programa.

reas importantes que iremos utilizar constantemente


Durante a produo de nossos sistemas devemos ficar atentos para algumas reas importantes
do Lazarus que podemos utilizar para facilitar algumas coisas. Na imagem abaixo voc
localizar algumas das reas que irei explicar agora.

O principal boto que usaremos constantemente o Save All


. Este boto salvar todos
os arquivos do nosso projeto para podermos ter os arquivos seguramente guardados para
futura alterao.
Outros dois botes importantes so o View Units e View Forms
, estes botes nos
mostraro os nossos formulrios e units(que so as reas de cdigos exibidas no Source Editor)
usados para que possamos acess-los mais rapidamente na hora do desenvolvimento.
Clicando nestes botes eles iro abrir uma janela exibindo todos os forms e units criadas, para
acessar algum form ou unit s selecion-lo e clicar em OK.
Assim como os botes explicados anteriormente, temos tambm os botes New Form e
Toggle Form/Unit
, o primeiro serve para adicionarmos um novo form em nosso
projeto (lembrando que o Form a janela do nosso projeto) e o Toggle Form/Unit servir para
alternar entre o Form exibido e a Unit deste, dessa maneira ele mostra o Form e a rea do
Source Editor com as programaes dos objetos deste form.
Concluindo temos ainda os botes de Play, Pause e Stop
, que servir para
executar , pausar ou finalizar o teste do funcionamento do nosso programa que estamos
desenvolvendo. Ao dar Play nosso programa executado para testarmos se esta funcionando
corretamente, tambm ao dar Play o Lazarus gera na pasta dos arquivos salvos do nosso
projeto o arquivo executvel do nosso programa para depois podermos us-lo sem ter que
ficar acessando o nosso projeto.

Criando um novo projeto e aprendendo a salvar


Sempre que iniciarmos o Lazarus, por padro aberto o ultimo projeto salvo, dessa forma
ento sempre que iniciarmos um novo projeto precisamos cri-lo seguindo o seguinte
processo. Clique no menu File > New... , aps clicar ele ir abrir uma janela com a opo de
novo projeto que desejamos criar, ento localize a opo Project > Aplication e clique em OK.
Assim que clicar em Ok ser aberto ento um novo projeto que poder ser trabalhado.

Tendo criado um novo projeto sempre necessrio salv-lo para que possamos ento
executar o programa para testes. Para salvarmos nosso projeto siga a seguinte seqncia;
Clique no menu File > Save All , aps isso ele ir abrir uma janela para escolher o local em que
ir salvar o primeiro arquivo do projeto, a Unit.
Precisamos saber que o nome deste arquivo Unit no deve ser alterado para evitar problemas
em nosso projeto, cada arquivo Unit referente a quantidade de formulrios que tivermos em
nosso projeto, por isso cada formulrio ter um arquivo para si sendo chamado
respectivamente de Unit1 e assim por diante. Este arquivo ser responsvel por todo cdigo
de todos os objetos que temos no formulrio. Sendo assim nunca altere o nome da Unit
apenas escolha uma pasta onde deseja salvar o projeto e clique em Salvar.

Aps salvar a Unit por padro o Lazarus questiona se deseja manter o nome do arquivo todo
em letra Minscula, ento se for de sua opo pode clicar na opo Rename to lowercase,
caso deseja manter o nome da maneira em que deixou s clicar em Keep name.

Aps salvar os arquivos da unit voc ter de salvar o arquivo do projeto que o Project este
nome pode ser alterado e voc definir o nome que far referencia ao tipo de programa que
voc esta desenvolvendo. Por exemplo, se voc esta construindo uma calculadora de o nome
de calculadora para o projeto e assim por diante. Escolhido o nome s clicar em Salvar.
Se voc entrar na pasta em que salvou o projeto ver varios arquivos com o icone do Lazarus,
para abrir seu projeto sempre clique em um dos dois arquivos que possuem o tipo Lazarus
project information , este arquivo ir abrir ento seu projeto ligando os formularios com suas
respectivas Units.

Assim sempre que alterarmos nossos projetos voc pode seguir o caminho File > Save All para
salvar seguramente as alteraes feitas.

Trabalhando nosso primeiro projeto


Para comearmos vamos criar um projeto simples que ir passar o contedo de um texto
digitado em uma caixa de texto para outra caixa de texto quando clicarmos em um boto.
Para isso precisaremos adicionar em nosso formulrio:

2 Objetos Edit encontrados na palheta Standard

1 Objeto Button tambm encontrado na palheta Standard

O formulrio dever ficar assim:

Depois de adicionar os objetos pedidos vamos conhecer algumas propriedades importantes de


cada um deles. Comeando pelo Form, d um clique nele com o boto esquerdo para
selecion-lo, aps verifique do lado esquerdo da sua tela as propriedades que sero explicadas
a seguir no Object Inspector.

Propriedades importantes do Form:


Border Icons
Esta propriedade ir definir os botes do System Menu que trabalham com os botes de
Minimizar, Maximizar e Fechar. Dentro desta propriedade voc pode habilitar ou desabilitar os
botes aplicando os valores True ou False, ou ainda desabilitar todos os botes aplicando os
valores True ou False na propriedade System Menu.
Border Style
Nesta propriedade voc pode definir o tipo de borda que deseja para a janela do seu projeto,
entre os valores voc ir encontrar as opes:

Sizeable Mantem a borda padro permitindo redimensionamento da janela pelo


usurio.
None Retira a borda da janela.
Single Mantem a borda padro no permitindo que o usurio redimensione a janela.

Caption
Esta propriedade permite mudar o nome que ir aparecer na barra de titulo do programa,
onde voc pode colocar, por exemplo, o nome do seu programa.
Color
Voc poder definir a cor de fundo do seu formulrio.
Cursor
Voc pode definir o tipo de cursor que ir aparecer no mouse enquanto ele estiver em cima do
Form.
Enable
Define se o seu formulrio est ou no Habilitado para uso, voc pode usar o valor True para
permitir aes no form ou False para no permitir aes nele.
Font
Voc pode definir qual a fonte padro usada em todo o formulrio.
Icon
Voc pode escolher um cone para ser o cone exibido na barra de titulo de seu formulrio.
Name
Esta uma das principais propriedades, ela define o nome pelo qual seu formulrio ser
chamado durante a programao, voc ver que esta propriedade tambm existe na grande
maioria dos objetos.
Position
Esta propriedade define como a janela aparecer quando o programa for executado, dentre as
opes temos a opo Desktop Center que exibe a tela exatamente no centro da Desktop e a
opo Designed que exibir a janela exatamente na posio em que voc definir no projeto.
Windows State
Esta propriedade define como a janela iniciar na execuo do programa, temos os valores
para ela iniciar Maximizada, Minimizada e o Normal.

Propriedades importantes do Edit


O Edit uma caixa de texto que serve para que o usurio entre com dados para serem
tratados pela programao, vamos ver agora algumas de suas principais propriedades. Para
comear clique sobre um dos Edit`s para selecion-lo e observe a tela do Object Inspector.
Alignment
Definir o alinhamento do texto dentro do Edit entre as opes voc encontrar, Left Justify(
Esquerda), Right Justify(Direita) e Center(Centralizado).
Border Style
Pode definir se a caixa ter borda ou no
CharCase
Define se o texto digitado ser somente em letras Maiusculas(Uppercase),
Minusculas(Lowercase) ou ambas (Normal)
7

Color
Define a cor de fundo da caixa de texto
Echomode
Define o tipo de texto, para digitao de senha pode-se usar o Password e para texto normal,
pode-se usar o Normal.
Enable
Habilita ou no a caixa de texto para digitao.
Font
Define as caractersticas de fonte do texto digitado na caixa
MaxLenght
Define o Maximo de caracteres que pode ser digitado na caixa
Name
Define o nome pelo qual seu Edit ser chamado durante a programao
ReadOnly
Habilita ou no a caixa de texto para somente leitura, permitindo ou no que o usurio altere
o texto digitado nela.
Text
a propriedade que controla o texto que est digitado dentro da caixa.
Visible
Permite habilitar ou no se a caixa de texto fique visvel ao usurio.

Propriedades importantes do Button


O Button boto de ao que executa uma determinada programao quando um evento
dado sobre ele. Ns possumos algumas propriedades importantes sobre ele tambm, e para
visualizarmos clique nele para selecion-lo e aps isso veja a janela do Object Inspector.
Caption
Esta propriedade permite mudar o nome que ir aparecer dentro do boto.
Color
Voc poder definir a cor de fundo do seu button.
Enable
Habilita ou no o boto para clique.
Font
Define as caractersticas de fonte do texto do Button.
Name
Define o nome pelo qual seu Button ser chamado durante a programao
Visible
Permite habilitar ou no se o Button ficar visvel ao usurio.
8

Desenvolvendo nosso primeiro programa


Aps observarmos algumas principais propriedades dos nossos objetos, vamos dar
continuidade ao nosso projeto. Relembrando nosso objetivo, queremos passar um texto
digitado na primeira caixa de texto para a segunda caixa quando pressionarmos o boto.
Antes de comearmos com a programao, ajuste as seguintes propriedades dos objetos
colocados no form para que nada acontea de maneira incorreta na produo de nosso
programa.
Propriedades do Form
Caption: Meu primeiro programa
Propriedades do primeiro Edit
Name: edt_texto1
Text: apagar o contedo que existe nele para ficar em branco
Propriedade do segundo Edit
Name: edt_texto2
Text: apagar o contedo que existe nele para ficar em branco
Propriedade do Button
Name: bt_muda
Caption: Mudar Texto
Agora que mudamos as propriedades dos nossos objetos, v ao menu File > Save all e salve o
projeto como ensinado no comeo deste material. Voc pode criar uma nova pasta chamada
primeiro_programa para salvar os arquivos do projeto, e lembre-se mantenha o nome da
Unit1 como Unit1 e d o nome de Primeiro_Programa ao arquivo do Project.
Feita as alteraes adequadas seu formulrio deve ficar parecido com a imagem abaixo:

Agora d dois cliques com o boto esquerdo sobre o Button bt_muda, para que seja aberta a
rea de codificao no Source Editor como na imagem abaixo:

Nome do Objeto

rea de codificao
do Objeto

Evento do Objeto

Na rea de codificao veremos para cada objeto que clicarmos um conjunto de cdigos
chamados Procedure. A procedure contm os cdigos definidos para cada objeto dependendo
de seu evento selecionado, por exemplo, vemos neste momento na linha da procedure o
nome do nosso objeto bt_muda e logo na frente o evento que estamos usando neste caso o
evento Click que acionado quando o usurio clica sobre o boto. Dentro da procedure os
cdigos digitados para a programao devero estar entre o Begin e o End; definido na tela.
O Begin e o End; define onde comea e onde termina os comandos programados para uma
determinada procedure.
Sabendo disso vamos configurar ento a programao do nosso objeto Button. Sabemos que
nosso objetivo fazer com que a caixa de texto edt_texto2 contenha o texto que for digitado
na caixa de texto edt_texto1, ento sabemos tambm que a propriedade que controla o
contedo digitado dentro da caixa de texto a propriedade text. Sendo assim vamos colocar
entre o Begin e o End; a seguinte programao abaixo:
procedure TForm1.bt_mudaClick(Sender: TObject);
begin
edt_texto2.Text := edt_texto1.Text;
end;
A programao acima far com que a propriedade text da caixa de texto edt_texto2 seja
alterada para o contedo que existe na propriedade text da caixa de texto edt_texto1. Com
isso podemos concluir que quando eu quiser atravs de alguma programao definir uma
propriedade de um objeto s eu utilizar o nome dado na propriedade name dele, acrescentar
10

um ponto e ento digitar a propriedade que eu quero alterar. Depois coloco o smbolo de dois
pontos ( : ) seguido de igual ( = ) e ento colocarei o valor que eu desejo acrescentar
propriedade escolhida.
Simplificando ficaria assim:
Name_do_objeto

propriedade

:=

valor escolhido

Lembrando que tudo junto, voc v acima de maneira espaada para facilitar a visualizao.
Concluda as configuraes s pressionar o boto de Play (ou apertar F9) e aguardar um
tempinho para executar o seu programa e testar. Digite agora qualquer texto dentro da
primeira caixa e aperte o boto Mudar Texto que voc ver o texto digitado aparecer na caixa
de baixo.

Feito o teste s clicar em File > Save all para guardar o seu primeiro programa. E assim voc
tambm ver que quando voc executou seu programa, foi criado um arquivo executvel do
seu projeto no local onde voc salvou. Agora para rodar o programa voc no precisa mais do
projeto, s levar o executvel para qualquer lugar e execut-lo para mostrar seu primeiro
programa a quem quiser.

Para finalizar a execuo do programa pelo projeto s apertar o boto de fechar da janela ou
ento pressionar o boto de Stop (ou o atalho CTRL + F2) que o executvel ser fechado e voc
poder fazer novas modificaes no projeto. Agora sabendo j trabalhar algumas propriedades
tente desenvolver um projeto que altera o texto do Caption do formulrio, pelo texto digitado
no Edit ( Lembre-se que o name do form Form1 e a propriedade alterada agora Caption).
11

Veja nas prximas edies

Revisando Sintaxes SQL SELECT * FROM Minha_Memria

Trabalhando com conexo ao banco de dados MySQL no Lazarus O Componente

Inserindo dados no Banco de Dados a partir do Lazarus Querys pra que te quero.

12

Trabalhando com conexo ao banco de dados MySQL no Lazarus

Prof. Vitor H. Migoto de Gouva


Colgio IDESA 2011

Edio 4 O Componente Trabalhando com conexo ao banco de dados MySQL no Lazarus


Ano: 03/2011

Nesta Edio
Introduo ......................................................................................................................................................................... 1
Os componentes necessrios............................................................................................................................................ 1
A DLL de conexo .............................................................................................................................................................. 1
Criando o Banco de Dados ................................................................................................................................................ 1
Criando o programa .......................................................................................................................................................... 2
Codificando nosso projeto ................................................................................................................................................ 4
Programao do Form .................................................................................................................................................. 4
Programao do Button Cadastrar ............................................................................................................................ 4
Arquivos Anexos................................................................................................................................................................ 6
Veja nas prximas edies ................................................................................................................................................ 7

Introduo
Nesta edio vamos aprender a trabalhar com os componentes de conexo com banco de
dados. A partir da ligao dos componentes seremos capazes de adicionar, atualizar e remover
dados em nosso banco para ento trabalharmos com ferramentas que iro nos ajudar a
organizar e resolver nossos problemas criando novas solues.

Os componentes necessrios
Para que possamos trabalhar a conexo ao nosso banco de dados vamos precisar de 4 objetos,
3 deles se encontram na palheta SQLdb e o outro na palheta Data Access. Os componentes de
que estamos falando so: Mysql Connection 5, SQL Query, SQL Transaction (esses na palheta
SQLdb) e o Data Source (na palheta Data Access).

Figura 1 - Na seqncia: MySql Connection - SQL Transaction - SQL Query e Data Source

A DLL de conexo
Para fazermos a conexo do Lazarus com o Mysql, precisaremos inicialmente termos uma DLL
responsvel pela ligao. Esta DLL a libmysql.dll ela encontrada dentro da pasta de
instalao do HeidSQL e pode ser baixada da internet tambm. Para continuarmos nosso
projeto ento, copie da pasta C:/Arquivos de Programas/HeidSQL/ o arquivo libmysql.dll e cole
dentro das pastas C:/Windows/system e C:/Windows/system32/ . Tendo realizado isso s
continuar com os procedimentos de criao do nosso projeto que segue abaixo.

Criando o Banco de Dados


Para conhecermos os componentes vamos criar um banco de dados onde iremos cadastrar
nomes de alunos com cdigos automticos. A tabela do banco de dados segue logo mais
abaixo. Para que voc tenha a mesma estrutura voc pode criar tudo sozinho ou pegar o
cdigo SQL que segue logo abaixo, abrir o HeidiSQL, acessar a palheta Query, colar o cdigo e
ento execut-lo apertando F9 para gerar o banco.

Banco de Dados - Escola

Campos
Codigo
Nome

Tabela: Alunos
Tipo de Dado
INT Auto Incremento Chave Primria
VARCHAR Tamanho: 100
1

O Cdigo SQL da criao do Banco e da Tabela segue abaixo:


CREATE DATABASE IF NOT EXISTS `escola` ;
USE `escola`;
CREATE TABLE IF NOT EXISTS `alunos` (
`codigo` int(10) NOT NULL AUTO_INCREMENT,
`nome` varchar(100) DEFAULT '0',
PRIMARY KEY (`codigo`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

Criando o programa
O objetivo deste nosso programa adicionar nomes de alunos no nosso banco de dados, para
isso precisaremos ento preparar nosso Form. Siga a imagem abaixo para ver a disposio dos
objetos no Form e logo depois veja as propriedades que devero ser alteradas seguindo a
numerao disposta em cada objeto. Ao criar o seu projeto lembre-se de salv-lo seguindo os
procedimentos ensinados anteriormente nas outras edies.

1
3

Agora altere as propriedades referentes a cada objeto, para tudo seguir corretamente, altere
primeiro as propriedades Name de cada objeto e depois siga alterando as outras
propriedades:
1. Label
a. Caption Nome:
2. Edit
a. Text deixar em branco
b. Name edt_nome
3. Button
a. Caption Cadastrar
4. SQL Connection
a. Name conecta
b. DatabaseName escola
c. HostName 127.0.0.1
d. UserName root
e. Password A senha que voc definiu na instalao do Appserv
f. Connected True
5. SQL Query
a. Name query
b. Database conecta
c. Transaction trans
6. SQL Transaction
a. Name trans
b. Database conecta
7. Data Source
a. Name source
b. Dataset query
8. DBGrid ( Palheta Data Control)
a. Name grid
b. DataSource source
9. Form
a. Caption Cadastro de Alunos

Codificando nosso projeto


Para que o sistema funcione ento precisamos agora incluir alguns comandos de programao
no nosso projeto. Primeiro vamos inserir uma pequena linha de programao no evento
FormCreate que ir fazer a ligao do nosso DB Grid com o banco de dados para que possamos
visualizar os dados que sero cadastrados.

Programao do Form
Para isso clique duas vezes no formulrio para ir para a tela de edio de cdigo diretamente
no evento FormCreate. Veja os comandos digitados e digite-os em seu projeto.
ATENO: PARA EVITAR PROBLEMAS EM NOSSO PROJETO, DIGITE O CDIGO QUE VOC
VER EM NOSSO MATERIAL, POIS CASO OS COMANDOS SEJAM COPIADOS E COLADOS NO
LAZARUS, ELES PODEM CONTER FORMATAES QUE SERO VISTAS COMO ERRO NO
PROGRAMA NA HORA DA DEPURAO.

Nesta programao estamos dizendo ao programa que no instante em que for criado o Form
(Evento FormCreate) o programa incluir na nossa query uma sintaxe SQL SELECT * FROM
alunos ORDER BY codigo que faz uma pesquisa no banco de dados por todos os dados da
tabela alunos e ordena o resultado pelo cdigo. Na segunda linha ele faz executar o script
anterior atravs da funo Open da query.
Este cdigo far com que os dados que tivermos no nosso banco sejam mostrados no DB Grid
do nosso form , tudo isso devido a ligao entre o Data Source a Query e o DB Grid.

Programao do Button Cadastrar


Para fazer a parte de cadastro vamos precisar codificar o boto de Cadastrar, para isso volte ao
form e d dois cliques no boto Cadastrar para irmos janela de edio de cdigo no evento
Click do nosso Button. Aps isso digite o cdigo que ver na imagem abaixo:

No cdigo do boto a primeira coisa que fazemos criar uma varivel do tipo STRING que ir
armazenar o script SQL de incluso dos dados( a criao da varivel voc observa na linha em
que adicionamos entre a Procedure e o Begin um comando Var e logo abaixo colocamos
sql:string; )
Depois do Begin o que se v o script SQL de incluso sendo adicionado na varivel SQL. O
script de incluso possui dentro dele a parte onde iremos pegar o valor que ser digitado
dentro da caixa de texto. Esta parte voc pode reparar quando vemos o cdigo depois do
VALUES ( + edt_nome.text + ); .
O cdigo digitado na propriedade text deve ser escrito entre aspas simples, mas no SQL
precisamos identificar um dado do tipo string entre aspas por isso digitamos primeiro as aspas
duplas dentro dos parnteses do VALUES, pois se usarmos as aspas simples significa que
estamos encerrando a instruo do text. Porem precisamos adicionar o contedo que ser
digitado dentro da caixa de texto e para fazer isso no podemos estar entre as aspas simples,
ento fechamos as aspas simples depois das duplas dizendo ao programa que iremos encerrar
o texto da propriedade text, mas adicionamos logo depois o + que ir fazer com que algo seja
juntado/concatenado ao contedo. Ento adicionamos depois do sinal de + o nome da nossa
caixa de texto e sua propriedade text que ir pegar o valor que for digitado dentro da caixa.
Para encerrar o script SQL usamos ento outro + e depois abrimos as aspas simples de novo e
continuamos como se estivssemos no mesmo texto de antes, assim encerrando a instruo
SQL. Dessa forma quando o computador executar ele ver como se tudo fosse um texto s
substituindo o contedo da caixa entre os sinais de + que ns inserimos.
Veja um exemplo de como o computador iria ler esta linha de cdigo se fosse digitado o nome
Joo dentro da caixa de texto:
Na programao INSERT INTO alunos (nome) VALUES (" '+edt_nome.Text+' ");
Quando Executado INSERT INTO alunos (nome) VALUES ("Joo");
Observe que quando executado como se o programa retirasse as aspas simples e substitusse
o contedo da caixa de texto no meio das aspas duplas.
Continuando a explicao das outras linhas, logo em seguida do scrip SQL temos a funo
Close sendo usada na query. Ela ir encerrar qualquer conexo que foi realizada anteriormente
para que uma nova instruo seja executada.
Ento adicionamos a sentena que estava na varivel sql dentro da query usando a linha
query.SQL.text := sql .
Para executar a sentena de incluso adicionada na query atravs da linha anterior explicada,
usamos a funo ExecSQL da query e depois disso usamos o mesmo script que foi digitado no
FormCreate para que seja atualizada a pesquisa no banco e o nosso DBGrid seja atualizado
exibindo agora o item que ser includo.
Esta programao far com que, quando o usurio digitar algo na caixa de texto e clicar em
Cadastrar, o texto digitado dentro do edit seja adicionado no nosso banco de dados. Podemos
5

ver que no cadastramos o cdigo porque na hora de criar o banco definimos este campo
como auto incremento, assim sendo, toda vez que for adicionado um novo nome na tabela o
cdigo gerado automaticamente pelo banco de dados.
Dessa forma depois de digitado esta programao voc pode executar seu projeto e ver que j
temos um programa de incluso no banco de dados.
Nas prximas edies vamos ver outras aes que podemos fazer com os dados, como
excluso, edio e pesquisa.

Arquivos Anexos
Os arquivos exemplos deste projeto juntamente com o arquivo SQL de criao do banco de
dados e tabela, podem ser obtidos pelo link a seguir:
http://www.idesa.com.br/vitor/vitor_2010_2semestre/arquivos/edicoes/projetos/ped4.rar
O arquivo est compactado no formato RAR, preciso um descompactador deste tipo de
arquivo para extrair os arquivos. Em caso de no conseguir baixar o arquivo RAR no endereo
acima, me contate pelo email: trabalhos.vitor@gmail.com .

Veja nas prximas edies

Revisando Sintaxes SQL SELECT * FROM Minha_Memria

Inserindo dados no Banco de Dados a partir do Lazarus Querys pra que te quero.

Trabalhando com Edio e Excluso de Dados no Lazarus Me altere ou me exclua.

Revisando sintaxes SQL e criando programa de pesquisa.

Prof. Vitor H. Migoto de Gouva


Colgio IDESA 2011
Edio 5 SELECT * FROM Minha_memoria Revisando Sintaxes SQL e Criando programa de Pesquisa
Ano: 04/2011

Nesta Edio
Introduo ......................................................................................................................................................................... 1
As sentenas SQL .............................................................................................................................................................. 1
Sentena de Insero de Dados .................................................................................................................................... 1
Sentena de Alterao de Dados .................................................................................................................................. 1
Sentena de Deleo de Dados..................................................................................................................................... 2
Sentena de Pesquisa de Dados.................................................................................................................................... 2
Parmetro WHERE .................................................................................................................................................... 2
Parmetro LIKE.......................................................................................................................................................... 3
Parmetro Order By .................................................................................................................................................. 3
Criando o programa .......................................................................................................................................................... 4
Codificando nosso projeto ................................................................................................................................................ 6
Programao do Form .................................................................................................................................................. 6
Programao do Button Pesquisar ............................................................................................................................ 7
Arquivos Anexos................................................................................................................................................................ 8
Veja nas prximas edies ................................................................................................................................................ 9

Introduo
Para trabalharmos com banco de dados SQL necessrio que saibamos trabalhar com suas
sintaxes e aqui nesta edio vamos revisar as sentenas SQL uma a uma, para podermos
evoluir nossos trabalhos e nossos programas a fim de obtermos o mximo desta ferramenta
to grandiosa de Banco de Dados.

As sentenas SQL
Vamos falar agora das sentenas bsicas que devemos saber para trabalhar com o banco de
dados MySQL. Vamos dividir em 4 partes , Insero , Alterao, Deleo e Pesquisa. Abaixo
vamos seguir cada uma delas.

Sentena de Insero de Dados


A sentena SQL de insero de dados segue a seguinte sintaxe abaixo:
INSERT INTO nome_da_tabela (campos,campos,...) VALUES (valores,valores,...);
Na sintaxe acima onde se l nome_da_tabela , seria o nome da tabela onde sero
acrescentados os valores desejados. Onde se l campos seriam os nomes dos campos,
separados por vrgula, que recebero os dados, que devem ser digitados idnticos como foram
definidos na tabela. Os valores a serem adicionados seguem respectivamente a posio
definida anteriormente na digitao do campo em que ir ser includo.
Os valores sero colocados entre aspas quando necessrios, dependendo do tipo de dado que
o campo possui na tabela.

Sentena de Alterao de Dados


A sentena de alterao de dados a seguinte:
UPDATE nome_da_tabela SET campo='valor alterado' WHERE campo=valor;
Na sentena de alterao definimos o nome_da_tabela e logo depois a sintaxe SET
colocamos os campos que queremos alterar seguido do valor alterado e por ultimo colocamos
uma condio para a alterao acontecer, por exemplo, definimos que a alterao ser feita
para um cdigo especifico, evitando assim que todos os dados do banco de dados sejam
alterados. Vejamos um exemplo:
UPDATE alunos SET nome='Mateu' WHERE codigo=5;
No exemplo acima vemos que na tabela alunos o dado do campo nome receber uma
alterao para Mateu sendo que a condio que o dado que ser alterado o dado que
possui o cdigo de valor 5, assim somente o dado que tem o cdigo 5 ser alterado no campo
nome para Mateu.

Sentena de Deleo de Dados


A sentena de deleo ou excluso a seguinte:
DELETE FROM nome_da_tabela WHERE campo1=x
Quando vamos excluir um registro especificado de um campo precisamos identificar
que campo queremos remover, para isso usamos novamente a condio com a sentena
where que significa quando. Vejamos um exemplo.
DELETE FROM alunos WHERE codigo=5;
Na sentena acima podemos dizer que ele ir apagar da tabela alunos todos os registros
quando o campo codigo for igual ao valor 5, dessa maneira somente o aluno de cdigo 5 ser
excludo. Sem a sentena where definindo uma condio, acabaremos por deletar todos os
dados da tabela.

Sentena de Pesquisa de Dados


A sintaxe da sentena de pesquisa a seguinte:
SELECT campo1,campo2,... FROM nome_das_tabelas OPES
A sintaxe do SELECT define em primeiro lugar os campos da tabela que sero mostrados no
resultado (se precisar exibir todos os campos s utilizar o * no lugar do nome dos campos),
logo depois, aps a sentena FROM define-se as tabelas que sero utilizadas na pesquisa.
Depois da tabela vm as opes de pesquisa, ou seja, definiremos a condio que ser
respeitada para a pesquisa ser executada. Podemos usar aqui o WHERE para identificar um
determinado valor especifico de um campo, ou ento podemos usar o parmetro LIKE que ir
pesquisar por valores que comeam, terminam ou possuem o valor definido no meio do dado,
se quisermos tambm podemos ordenar nossa pesquisa usando a propriedade ORDER BY e
definindo a partir de qual campo ser ordenado o resultado da pesquisa. Vamos ver um
exemplo de cada caso.
Parmetro WHERE
O parmetro where define uma condio nica, ou seja, o valor especificado dever ser
idntico ao dado que se quer conseguir. Vejamos um exemplo:
SELECT * FROM alunos WHERE nome='Carlos';
Neste exemplo sero pesquisados na tabela alunos os dados do aluno que possui o nome
idntico a Carlos, nesta pesquisa se existir algum aluno com o nome Carlos Alessandro no
ser retornado como resultado, pois a pesquisa especifica somente ao nome Carlos.
Este parmetro til quando se deseja fazer a pesquisa de um valor cujo dado nico, como
um cdigo ou RG ou CPF, por exemplo, em que os resultados tm de ser um nico valor exato.

Parmetro LIKE
O parmetro like ,que uma variao do parmetro where, define uma condio onde o valor
pesquisado pode estar no comeo, no fim ou no meio de qualquer palavra do campo, ou seja,
o valor pesquisado no necessariamente poder ser idntico ao dado que se quer conseguir.
Vejamos um exemplo:
SELECT * FROM alunos WHERE nome LIKE "Ca%";
Neste exemplo sero pesquisados na tabela alunos os dados dos alunos que os nomes
comeam com as letras Ca e podem ter qualquer terminao, nesta pesquisa se existir algum
aluno com o nome Carlos Alessandro ser retornado como resultado, pois a pesquisa restringe
que o dado comece com as letras Ca podendo ter qualquer terminao posteriormente.
O parmetro like pode ser usado de 3 maneiras com o operador %, vejamos estas maneiras:

%texto Desta maneira os dados pesquisados devero terminar com o texto definido
texto% Desta maneira os dados pesquisados devero comear com o texto definido
%texto% Desta maneira os dados pesquisados podem conter o texto definido no
meio, no inicio ou no final deles.

Este parmetro til quando se deseja fazer pesquisas de informaes aproximadas, onde se
possui parte da informao apenas.
Parmetro Order By
J fora das pesquisas, temos o parmetro Order by que serve como ordenador dos resultados.
Ele ordena de maneira ascendente ou decrescente os resultados pelo campo definido pelo
usurio. Vejamos um exemplo:
SELECT * FROM alunos ORDER BY codigo ASC;
Esta pesquisa ir retornar todos os dados da tabela ordenados pelo cdigo de maneira
ascendente, ou seja, do menor cdigo para o maior cdigo.
Para ordenar de maneira ascendente utiliza-se o parmetro ASC logo aps o campo que se
deseja ordenar, e para ordenar de maneira decrescente utiliza-se o parmetro DESC logo aps
o campo que se deseja ordenar. Pode-se tambm ordenar em funo de mais de um campo
apenas separando as opes de ordenao com vrgula.
SELECT * FROM alunos ORDER BY codigo ASC, nome DESC;

Criando o programa
Agora que j temos relembrado o uso das sentenas SQL podemos criar um programa em que
iremos fazer uma pesquisa das informaes que possumos no nosso banco de dados. O
objetivo deste nosso programa pesquisar nomes de alunos no nosso banco de dados e para
isso precisaremos ento preparar nosso Form. Siga a imagem abaixo para ver a disposio dos
objetos no Form e logo depois veja as propriedades que devero ser alteradas seguindo a
numerao disposta em cada objeto. Ao criar o seu projeto lembre-se de salv-lo seguindo os
procedimentos ensinados anteriormente nas outras edies.

9
1

Agora altere as propriedades referentes a cada objeto, para tudo seguir corretamente, altere
primeiro as propriedades Name de cada objeto e depois siga alterando as outras
propriedades:
1. Label
a. Caption Pesquisa:
2. Edit
a. Text deixar em branco
b. Name pesq
3. Button
a. Caption Pesquisar
4. SQL Connection
a. Name con
b. DatabaseName escola
c. HostName 127.0.0.1
d. UserName root
e. Password A senha que voc definiu na instalao do Appserv
f. Connected True
5. SQL Query
a. Name query
b. Database con
c. Transaction trans
6. SQL Transaction
a. Name trans
b. Database con
7. Data Source
a. Name source
b. Dataset query
8. DBGrid ( Palheta Data Control)
a. Name grid
b. DataSource source
9. Form
a. Caption Pesquisa de Alunos

Codificando nosso projeto


Para que o sistema funcione ento precisamos agora incluir alguns comandos de programao
no nosso projeto. Primeiro vamos inserir uma pequena linha de programao no evento
FormCreate que ir fazer a ligao do nosso DB Grid com o banco de dados para que possamos
visualizar todos os dados que esto cadastrados.

Programao do Form
Para isso clique duas vezes no formulrio para ir para a tela de edio de cdigo diretamente
no evento FormCreate. Veja os comandos digitados e digite-os em seu projeto.
ATENO: PARA EVITAR PROBLEMAS EM NOSSO PROJETO, DIGITE O CDIGO QUE VOC
VER EM NOSSO MATERIAL, POIS CASO OS COMANDOS SEJAM COPIADOS E COLADOS NO
LAZARUS, ELES PODEM CONTER FORMATAES QUE SERO VISTAS COMO ERRO NO
PROGRAMA NA HORA DA DEPURAO.

Nesta programao estamos dizendo ao programa que no instante em que for criado o Form
(Evento FormCreate) o programa ir incluir na nossa query uma sintaxe SQL SELECT * FROM
alunos ORDER BY codigo que faz uma pesquisa no banco de dados por todos os dados da
tabela alunos e ordena o resultado pelo cdigo. Na segunda linha ele faz executar o script
anterior atravs da funo Open da query.
Este cdigo far com que os dados que tivermos no nosso banco sejam mostrados no DB Grid
do nosso form , tudo isso devido a ligao entre o Data Source a Query e o DB Grid.

Programao do Button Pesquisar


Para fazer a parte da pesquisa vamos precisar codificar o boto de Pesquisar, para isso volte ao
form e d dois cliques no boto Pesquisar para irmos janela de edio de cdigo no evento
Click do nosso Button. Aps isso digite o cdigo que ver na imagem abaixo:

No cdigo do boto a primeira coisa que fazemos criar uma varivel do tipo STRING que ir
armazenar o texto a ser pesquisado. ( a criao da varivel voc observa na linha em que
adicionamos entre a Procedure e o Begin um comando Var e logo abaixo colocamos
sql:string;)
Depois do Begin o que se v que pegamos o valor da propriedade text do edit pesq, que
possuir o valor digitado pelo usurio, e armazenamos dentro da varivel SQL. Aps isso
finalizamos a conexo anterior do Query atravs do comando query.close; e ento na linha
abaixo iniciamos a sintaxe de pesquisa.
A sintaxe de pesquisa adicionada na propriedade SQL.text do objeto query far a pesquisa do
nome dos alunos que possuem o texto digitado pelo usurio em qualquer parte do nome.
Dentro da sintaxe SQL precisamos incluir o texto digitado pelo usurio, por ser texto deve ser
apresentado entre aspas ento para isso digitamos primeiro as aspas duplas, pois se usarmos
as aspas simples significa que estamos encerrando a instruo do text da query. Porem
precisamos adicionar o contedo que ser digitado dentro da caixa de texto e para fazer isso
no podemos estar entre as aspas simples, ento fechamos as aspas simples depois do
parmetro % do comando LIKE, dizendo ao programa que iremos encerrar o texto da
propriedade text da query, mas adicionamos logo depois o + que ir fazer com que algo seja
juntado/concatenado ao contedo. Ento adicionamos depois do sinal de + a varivel que
possui o valor da caixa de texto. Para encerrar o script SQL usamos ento outro + e depois
abrimos as aspas simples de novo e continuamos como se estivssemos no mesmo texto de
antes, assim encerrando o parmetro % e depois a instruo SQL.
Dessa forma quando o computador executar ele ver como se tudo fosse um texto s
substituindo o contedo da caixa entre os sinais de + que ns inserimos.
Veja um exemplo de como o computador iria ler esta linha de cdigo se fosse digitado o nome
Jo dentro da caixa de texto:
Na programao SELECT * FROM alunos WHERE nome LIKE "% +sql+'% ");
7

Quando Executado SELECT * FROM alunos WHERE nome LIKE "%Jo%");

Observe que quando executado como se o programa retirasse as aspas simples e substitusse
o contedo da caixa de texto no meio das aspas duplas com os parmetros %.
Continuando a explicao das outras linhas, logo em seguida do script SQL temos a funo
Open sendo usada na query, que ir executar a pesquisa.
Dessa forma depois de digitado esta programao voc pode executar seu projeto e ver que j
temos um programa de pesquisa no banco de dados.
Nas prximas edies vamos ver outras aes que podemos fazer com os dados, como
excluso e edio.

Arquivos Anexos
Os arquivos exemplos deste projeto podem ser obtidos pelo link a seguir:
http://www.idesa.com.br/vitor/vitor_2010_2semestre/arquivos/edicoes/projetos/ped5.rar
O arquivo est compactado no formato RAR, preciso um descompactador deste tipo de
arquivo para extrair os arquivos. Em caso de no conseguir baixar o arquivo RAR no endereo
acima, me contate pelo email: trabalhos.vitor@gmail.com .

Veja nas prximas edies

Trabalhando com Edio e Excluso de Dados no Lazarus Me altere ou me exclua.

Alterando e Excluindo dados do Banco de Dados MySQL.

Prof. Vitor H. Migoto de Gouva


Colgio IDESA 2011
Edio 6 Trocando e Tirando Alterando e Excluindo dados do Banco de Dados MySQL
Ano: 09/2011

Nesta Edio
Introduo ......................................................................................................................................................................... 1
A tabela que iremos utilizar .............................................................................................................................................. 1
Criando o programa .......................................................................................................................................................... 2
Codificando nosso projeto ................................................................................................................................................ 4
Programao do Form .................................................................................................................................................. 4
Programao do DBGrid para mostrar os dados nos Edits ........................................................................................... 5
Programao do Button Alterar ................................................................................................................................ 6
Programao do Button Excluir ................................................................................................................................. 7
Arquivos Anexos................................................................................................................................................................ 8

Introduo
Depois de aprendermos a adicionar e pesquisar dados em nosso banco de dados vamos
aprender a construir uma aplicao em Lazarus para realizar a alterao e excluso de
informaes do banco.

A tabela que iremos utilizar


Para realizar a construo deste exemplo vamos utilizar um banco de dados de produtos. Para
poder utilizar o banco de dados correto, no HeidSQL conecte no seu servidor e logo aps clique
na aba query. Coloque o cdigo abaixo para a construo do banco e da tabela produtos e seus
respectivos campos:
CREATE DATABASE IF NOT EXISTS `3a`;
USE `3a`;

CREATE TABLE IF NOT EXISTS `produtos` (


`codigo` int(10) NOT NULL auto_increment,
`produto` varchar(50) default '0',
`quantidade` int(11) default '0',
PRIMARY KEY (`codigo`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

Criando o programa
Nosso formulrio conter os componentes representados na imagem abaixo:

9
2

3
8

Agora altere as propriedades referentes a cada objeto, para tudo seguir corretamente altere
primeiro as propriedades Name de cada objeto e depois siga alterando as outras
propriedades:
1. Labels ( 3 labels )
a. Caption Cdigo:
b. Caption Produto:
c. Caption Quantidade:
2. Edits ( 3 edits)
a. Text de todos os edits deixar em branco
b. Name edit1 (para a caixa de cdigo)
c. Nameedit2 (para a caixa de produto)
d. Name edit3(para a caixa de quantidade)
3. Buttons (2 buttons)
a. Caption Alterar
b. Caption Excluir
4. SQL Connection
a. Name con
b. DatabaseName 3a
c. HostName 127.0.0.1
d. UserName root
e. Password A senha que voc definiu na instalao do Appserv
f. Connected True
5. SQL Query
a. Name query
b. Database con
c. Transaction trans
6. SQL Transaction
a. Name trans
b. Database con
7. Data Source
a. Name source
b. Dataset query
8. DBGrid ( Palheta Data Control)
a. Name grid
b. DataSource source
9. Form
a. Caption Alterao e Excluso

Codificando nosso projeto


Para que o sistema funcione ento precisamos agora incluir alguns comandos de programao
no nosso projeto. Primeiro vamos inserir uma pequena linha de programao no evento
FormCreate que ir fazer a ligao do nosso DB Grid com o banco de dados para que possamos
visualizar todos os dados que esto cadastrados. No esquea de salvar o projeto antes de
mandar executar.

Programao do Form
Para isso clique duas vezes no formulrio para ir para a tela de edio de cdigo diretamente
no evento FormCreate. Veja os comandos digitados e digite-os em seu projeto.
ATENO: PARA EVITAR PROBLEMAS EM NOSSO PROJETO, DIGITE O CDIGO QUE VOC
VER EM NOSSO MATERIAL, POIS CASO OS COMANDOS SEJAM COPIADOS E COLADOS NO
LAZARUS, ELES PODEM CONTER FORMATAES QUE SERO VISTAS COMO ERRO NO
PROGRAMA NA HORA DA DEPURAO.

Nesta programao estamos dizendo ao programa que no instante em que for criado o Form
(Evento FormCreate) o programa ir incluir na nossa query uma sintaxe SQL SELECT * FROM
produtos que faz uma pesquisa no banco de dados por todos os dados da tabela produtos. Na
segunda linha ele faz executar o script anterior atravs da funo Open da query.
Este cdigo far com que os dados que tivermos no nosso banco sejam mostrados no DB Grid
do nosso form , tudo isso devido a ligao entre o Data Source a Query e o DB Grid.

Programao do DBGrid para mostrar os dados nos Edits


Como os dados que vamos alterar ou excluir eles precisam estar dentro dos edits para
trabalharmos com os dados ento precisamos programar nosso DBGrid para que quando o
usurio clicar no produto pretendido no DBGrid as informaes deste produto sejam
transferidas para os edits. Para isso iremos utilizar do DBGrid um evento chamado OnCellClick
localizada na aba Events do Object Inspector quando o DBGrid selecionado.

Localizando o evento OnCellClick d dois cliques na caixa em sua frente para ir para o Source
Editor ou janela de edio de cdigos. Na janela de Edio de cdigos voc ir digitar os
comandos abaixo:

Nos comandos descritos estamos fazendo com que quando o usurio clicar em alguma linha
do DBGrid o contedo contido nas clulas de cada coluna da linha clicada ser transmitida
para dentro dos respectivos edits. Capturamos os dados de cada clula do DBGrid atravs da
propriedade Fields[numero da coluna].

Programao do Button Alterar


Para fazer a parte da alterao vamos precisar codificar o boto de Alterar, para isso volte ao
form e d dois cliques no boto Alterar para irmos janela de edio de cdigo no evento Click
do nosso Button. Aps isso digite o cdigo que ver na imagem abaixo:

No cdigo do boto a primeira coisa que fazemos criar uma varivel do tipo STRING que ir
armazenar o texto da sentena de alterao. (a criao da varivel voc observa na linha em
que adicionamos entre a Procedure e o Begin um comando Var e logo abaixo colocamos
sql:string;)
Depois do Begin o que fazemos fechar a ultima execuo da query e logo aps na varivel
SQL adicionamos o texto da alterao substituindo o nome do produto pelo contedo digitado
no edit2.text e a quantidade, pelo contedo digitado do edit3.text.
Continuando a explicao das outras linhas, logo em seguida do script SQL pegamos o valor da
variavel sql e direcionamos para a query atravs da propriedade SQL.text e abaixo temos a
funo ExecSQL sendo usada na query, que ir executar a sentena da varivel.
Mais abaixo repetimos a pesquisa que foi feita no Form para atualizar os dados do grid e
verificar se a alterao foi feita com sucesso.
Dessa forma depois de digitado estas programaes voc pode executar seu projeto, clicar em
algum dado de produto do grid, que voc deve cadastrar pelo HeidSQL para testar a alterao,
alterar o contedo e ento clicar no boto alterar e verificar se alterao foi feita.

Programao do Button Excluir


Para fazer a parte da excluso vamos precisar codificar o boto de Excluir, para isso volte ao
form e d dois cliques no boto Excluir para irmos janela de edio de cdigo no evento Click
do nosso Button. Aps isso digite o cdigo que ver na imagem abaixo:

No cdigo do boto a primeira coisa que fazemos criar uma varivel do tipo STRING que ir
armazenar o texto da sentena de excluso. (a criao da varivel voc observa na linha em
que adicionamos entre a Procedure e o Begin um comando Var e logo abaixo colocamos
sql:string;)
Depois do Begin o que fazemos criar um IF onde iremos analisar uma a escolha do usurio
em uma caixa de alerta atravs do comando messageDLG que ir abrir com opo do usurio
escolher Yes ou No na hora de excluir algum produto. Quando o usurio escolher a opo Yes
ento ser executado o fechamento da ultima execuo da query e logo aps na varivel SQL
adicionamos o texto da excluso substituindo o cdigo do produto pelo contedo digitado no
edit1.text. Logo em seguida do script SQL pegamos o valor da variavel sql e direcionamos para
a query atravs da propriedade SQL.text e abaixo temos a funo ExecSQL sendo usada na
query, que ir executar a sentena da varivel.
Mais abaixo repetimos a pesquisa que foi feita no Form para atualizar os dados do grid e ento
atravs do comando showmessage uma mensagem de alerta ir aparecer dizendo que o
produto foi excludo com sucesso.
Se o usurio clicar em No na caixa de verificao da excluso ento ser apenas executada
uma mensagem de alerta dizendo que o produto no foi excludo.
Dessa forma depois de digitado estas programaes voc pode executar seu projeto, clicar em
algum dado de produto do grid, que voc deve cadastrar pelo HeidSQL para testar, e ento
clicar no boto excluir, confirmar a excluso e verificar se excluso foi feita.

Arquivos Anexos
Os arquivos exemplos deste projeto podem ser obtidos pelo link a seguir:
http://www.idesa.com.br/vitor/vitor_2010_2semestre/arquivos/edicoes/projetos/ped6.rar
O arquivo est compactado no formato RAR, preciso um descompactador deste tipo de
arquivo para extrair os arquivos. Em caso de no conseguir baixar o arquivo RAR no endereo
acima, me contate pelo email: trabalhos.vitor@gmail.com .

Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL.

Prof. Vitor H. Migoto de Gouva


Colgio IDESA 2012
Edio 7 Listando e Gravando Listando itens em ComboBox e gravando os dados no Banco de Dados Mysql
Ano: 04/2012

Nesta Edio
Introduo ......................................................................................................................................................................... 1
A tabela que iremos utilizar .............................................................................................................................................. 1
Criando o programa .......................................................................................................................................................... 3
Codificando nosso projeto ................................................................................................................................................ 4
Criao do Procedimento.............................................................................................................................................. 4
Criao do vetor e variveis necessrias .................................................................................................................. 4
Criao do procedimento de pesquisa de cidades ................................................................................................... 5
Programao da Procedure Atualiza_cidades() ........................................................................................................ 6
Programao do Button Cadastrar ............................................................................................................................ 7
Programao do Form .................................................................................................................................................. 8
Arquivos Anexos................................................................................................................................................................ 8

Introduo
Nesta edio vamos aprender a trabalhar com tabelas estrangeiras, ou seja, em alguns
momentos temos uma tabela principal que esta ligada a outra, estrangeira, por meio de um
cdigo e nosso sistema para funcionar corretamente precisa listar os itens desta tabela
estrangeira para armazenar o cdigo corretamente na nossa tabela principal, para isso iremos
cuidadosamente aprender a pesquisar os dados desta tabela estrangeira e listar os itens em
um combobox para seleo. Aps a listagem vamos ver como realizar a incluso dos dados na
tabela principal para a gravao no banco de dados.

A tabela que iremos utilizar


Para realizar a construo deste exemplo vamos utilizar um banco de dados de clientes. Para
poder utilizar o banco de dados correto, no HeidSQL conecte no seu servidor e logo aps clique
na aba query. Coloque o cdigo abaixo para a construo do banco e das tabelas clientes,
cidades e seus respectivos campos:
CREATE DATABASE IF NOT EXISTS `3a`;
USE `3a`;

CREATE TABLE IF NOT EXISTS `clientes` (


`cod` int(10) unsigned NOT NULL auto_increment,
`nome` varchar(150) default NULL,
`cod_cidade` int(10) default NULL,
PRIMARY KEY (`cod`),
KEY `cod_cidade` (`cod_cidade`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

CREATE TABLE IF NOT EXISTS `cidades` (


`cod_cidade` int(10) NOT NULL auto_increment,
`cidade` varchar(100) default '0',
PRIMARY KEY (`cod_cidade`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

Neste banco teremos duas tabelas interligadas por um cdigo. Nossa tabela Clientes possui um
campo chamado cod_cidade que est ligado diretamente a tabela cidades. Nosso sistema ir
fazer a seleo das cidades em um combobox e aps a seleo do usurio ir gravar na tabela
clientes o cdigo da cidade selecionada.
Para o funcionamento do sistema nossa tabela de cidades tambm dever ter uma tela de
cadastro simples como j aprendemos para que possamos cadastrar cidades para usar com o
cadastro dos clientes.
Porem como a parte de cadastro j foi abordada em outras edies, esta edio ir acrescentar
dentro da nossa tabela cidades alguns registros j para uso com este exemplo. Para isso copie
o cdigo abaixo e cole na aba query do HeidSQL e execute para cadastrar algumas cidades na
nossa tabela.
INSERT INTO `cidades` (`cod_cidade`, `cidade`) VALUES
(1, 'Taubat'),
(2, 'So Jos dos Campos'),
(3, 'Trememb'),
(4, 'Ubatuba'),
(5, 'So Sebastio'),
(6, 'Caapava'),
(7, 'Aparecida');

Criando o programa
Nosso formulrio conter os componentes representados na imagem abaixo:

8
2

7
4

6
3

Agora altere as propriedades referentes a cada objeto, para tudo seguir corretamente altere
primeiro as propriedades Name de cada objeto e depois siga alterando as outras
propriedades:
1. Labels ( 2 labels )
a. Caption Nome do Cliente:
b. Caption Cidade do Cliente:
2. Edit ( 3 edits)
a. Text deixar em branco
b. Name edt_nome (para a caixa de nome do cliente)
3. Button
a. Caption Cadastrar
4. SQL Connection
a. Name con
b. DatabaseName 3a
c. HostName 127.0.0.1 para uso na escola use 192.168.10.250
d. UserName root para uso na escola use 3a ou 3b
e. Password A senha que voc definiu na instalao do Appserv para uso na
escola use 3a ou 3b
f. Connected True
5. SQL Query
a. Name query
b. Database con
c. Transaction trans
6. SQL Transaction
a. Name trans
b. Database con
7. ComboBox
a. Name cmb_cidade
b. ReadOnly True
8. Form
a. Caption Selecionando Itens

Codificando nosso projeto


ATENO: PARA EVITAR PROBLEMAS EM NOSSO PROJETO, DIGITE O CDIGO QUE VOC
VER EM NOSSO MATERIAL, POIS CASO OS COMANDOS SEJAM COPIADOS E COLADOS NO
LAZARUS, ELES PODEM CONTER FORMATAES QUE SERO VISTAS COMO ERRO NO
PROGRAMA NA HORA DA DEPURAO.
Para que o sistema funcione ento precisamos agora incluir alguns comandos de programao
no nosso projeto. Primeiro vamos criar um procedimento que ir fazer a pesquisa dos dados
da tabela cidades e ir exibi-los dentro do nosso combobox. No se esquea de salvar o
projeto antes de mandar executar.

Criao do Procedimento
Este procedimento ir fazer uma associao entre um vetor que vai guardar os cdigos da
tabela de cidades. Este vetor, que possui um nome e vai funcionar como uma tabela de uma
nica coluna, em que no nosso caso essa coluna possuir os cdigos de cada item da tabela de
cidades, e onde cada linha possui um ndice que inicia em 0 para podermos capturar ou
guardar determinada informao dentro do vetor. Para visualizar melhor acompanhe o
exemplo abaixo:
vetor_cidades
ndice Cdigo
0
1
1
2
2
3
3
4
4
5

Para capturarmos o dado Cdigo 3 deste vetor precisamos definir o nome do vetor e o ndice
da linha que queremos dentro de colchetes. Ento para isso definimos o cdigo 3 da seguinte
maneira: vetor_cidades[2] pois o ndice referente ao cdigo 3 o ndice 2. Vamos agora ento
criar inicialmente nosso vetor em nosso sistema.
Criao do vetor e variveis necessrias
Abra a janela de codificao e na parte onde voc ir encontrar o comando var voc ir
adicionar os seguintes comandos:

O vetor criado com a definio do comando vetor_cidades: array[0..10000] of integer; isso


significa que criamos um vetor que possui de 0 a 10000 linhas e que ir armazenar
informaes do tipo inteiro e para podermos trabalhar futuramente com os ndices em nossa
programao declaramos a varivel x do tipo inteiro.
4

Criao do procedimento de pesquisa de cidades


Ns vamos criar um procedimento responsvel por pesquisar e fazer a associao dos cdigos
de cidades no vetor para facilitar nosso trabalho num momento em que for necessrio
atualizar a lista.
Para criarmos o procedimento, pouco acima do setor var em que foi digitado o cdigo anterior
voc ir declarar nossa procedure, conforme v destacado na imagem abaixo.

Agora pouco abaixo do setor Implementation voc ir iniciar nosso procedimento conforme
parte em destaque na imagem abaixo:

Programao da Procedure Atualiza_cidades()


Inicialmente nesta procedure vamos inicializar em 0 a nossa varivel x para controlarmos o
ndice do nosso vetor. Em seguida vamos limpar o combobox cmb_cidades para podermos
inserir os resultados da nossa pesquisa dos itens que temos armazenado no banco de dados da
tabela cidades.
Logo depois fazemos a declarao da sentena SQL de pesquisa dos itens guardados na tabela
cidade ordenando por cdigo e logo em seguida executamos a pesquisa.

Agora que fizemos a pesquisa de todos os itens da tabela cidades precisamos armazenar os
nomes das cidades dentro do combobox e os cdigos iremos armazenar dentro do nosso
vetor. Para isso vamos criar um lao while que ir ser executado passando linha a linha de
registro at que a ultima linha de resultado da pesquisa seja analisada. Esta analise feita
utilizando como condio do nosso lao o parmetro EOF ( End of File/ Final do Arquivo) do
componente query.
Dentro deste lao iremos inicialmente armazenar no nosso vetor o valor da coluna cdigo que
vem do banco de dados atravs do ndice 0 no parmetro Fields do componente query. Logo
em seguida iremos adicionar o nome da cidade no combobox atravs da propriedade
Items.Add do combo usando o ndice 1 no parmetro Fields do componente query.
Aps ele fazer essa atribuio para o primeiro item iremos atravs do comando query.next
para o prximo item do resultado, e iremos somar 1 ao valor da varivel x que est sendo
usado como ndice do nosso vetor vetor_cidades. Para finalizar o procedimento vamos logo
aps o lao fechar a conexo do nosso componente query atravs do parmetro close.

Voc ir visualizar estes acontecimentos na programao completa da procedure


exemplificada na imagem abaixo:

Programao do Button Cadastrar


Para fazer a parte do cadastro vamos clicar duas vezes no boto Cadastrar para irmos para a
tela de codificao, nela voc ir digitar o seguinte cdigo:

Neste cdigo iniciamos finalizando qualquer ao do nosso componente query atravs do


parmetro close. Em seguida adicionamos no nosso componente query a sentena de insero
de dados no banco de dados.
Para pegarmos o valor do cdigo corretamente dentro do vetor fazemos uma associao ao
numero do ndice do combobox com o ndice do vetor atravs do comando ItemIndex do
combobox. Este comando itemindex ir capturar o ndice do item do combobox que foi
selecionado, sendo assim como o ndice do combobox se comporta de 0 at o numero de itens
existentes o numero do ndice do combobox ser exatamente o mesmo numero do ndice do
vetor que possui o cdigo da cidade selecionada. Veja uma demonstrao na imagem abaixo:

Programao do Form
Para finalizarmos nosso projeto, vamos programar o evento FormCreate, para isso d dois
cliques no Form para irmos para a tela de codificao. Neste evento quando o formulrio for
criado iremos chamar o procedimento de atualizao das cidades que ir pesquisar as cidades
do banco e adicionar no combobox cada uma delas.
Para executar o procedimento usaremos a programao abaixo:

Tendo feito esta programao nosso projeto est finalizado. Nosso sistema esta capturando as
cidades da tabela CIDADES e cadastrando o cdigo da cidade na tabela de CLIENTES.

Arquivos Anexos
Os arquivos exemplos deste projeto podem ser obtidos pelo link a seguir:
http://www.idesa.com.br/vitor/vitor_2010_2semestre/arquivos/edicoes/projetos/ped7.rar
O arquivo est compactado no formato RAR, preciso um descompactador deste tipo de
arquivo para extrair os arquivos. Em caso de no conseguir baixar o arquivo RAR no endereo
acima, me contate pelo email: trabalhos.vitor@gmail.com .