Apostila mysql leka

Page 1

MySQL O MySQL é um sistema de gerenciamento de banco de dados (SGBD), que utiliza a linguagem SQL (Linguagem de Consulta Estruturada, do inglês Structured Query Language) como interface. É atualmente um dos bancos de dados mais populares, com mais de 10 milhões de instalações pelo mundo. O MySQL foi criado na Suécia por dois suecos e um finlandês: David Axmark, Allan Larsson e Michael "Monty" Widenius, que têm trabalhado juntos desde a década de 1980. Hoje seu desenvolvimento e manutenção empregam aproximadamente 400 profissionais no mundo inteiro, e mais de mil contribuem testando o software, integrando-o a outros produtos, e escrevendo a respeito dele. No dia 16 de Janeiro de 2008, a MySQL AB, desenvolvedora do MySQL foi adquirida pela Sun Microsystems, por US$ 1 bilhão, um preço jamais visto no setor de licenças livres. No dia 20 de Abril de 2009 a Oracle compra a Sun Microsystems e todos o seu produtos, incluindo o MySQL. A Comissão Europeia ainda não aprovou a aquisição. O MySQL atualmente é um dos maiores SGBD’s do mundo, com mais de 10 milhões de instalações e vem sendo usado inclusive em projetos de grande porte em grandes empresas. Entre essas empresas, estão: NASA, Friendster, Banco Bradesco, Dataprev, HP, Nokia, Sony, Lufthansa, U.S. Army, U.S. Federal Reserve Bank, Associated Press, Alcatel, Slashdot, Cisco Systems, Google, entre outros. Uma característica fundamental do MySQL é ser desenvolvido em código aberto e funcionar num grande número de sistemas operacionais : Windows, Linux, FreeBSD, BSDI, Solaris, Mac OS X, SunOS, SGI, etc. É reconhecido pelo seu desempenho e robustez e também por ser multi-tarefa e multi-usuário. A própria Wikipédia, usando o programa MediaWiki, utiliza o MySQL para gerenciar seu banco de dados, demostrando que é possível utilizá-lo em sistemas de produção de alta exigência e em aplicações sofisticadas.

Modelagem de dados: modelo conceitual, modelo lógico e físico A modelagem de dados é uma técnica usada para a especificação das regras de negócios e as estruturas de dados de um banco de dados. Ela faz parte do ciclo de desenvolvimento de um sistema de informação e é de vital importância para o bom resultado do projeto. Modelar dados consiste em desenhar o sistema de informações, concentrando-se nas entidades lógicas e nas dependências lógicas entre essas entidades. Modelagem de dados ou modelagem de banco de dados envolve uma série de aplicações teóricas e práticas, visando construir um modelo de dados consistente, não redundante e perfeitamente aplicável em qualquer SGBD moderno.


A modelagem de dados está dividida em: Modelo conceitual A modelagem conceitual basea-se no mais alto nível e deve ser usada para envolver o cliente, pois o foco aqui é discutir os aspectos do negócio do cliente e não da tecnologia. Os exemplos de modelagem de dados vistos pelo modelo conceitual são mais fáceis de compreender, já que não há limitações ou aplicação de tecnologia específica. O diagrama de dados que deve ser construído aqui é o Diagrama de Entidade e Relacionamento, onde deverão ser identificados todas as entidades e os relacionamentos entre elas. Este diagrama é a chave para a compreensão do modelo conceitual de dados. Exemplo simples de Diagrama de Entidade e Relacionamento

Modelo lógico O modelo lógico já leva em conta algumas limitações e implementa recursos como adequação de padrão e nomenclatura, define as chaves primárias e estrangeiras, normalização, integridade referencial, entre outras. Para o modelo lógico deve ser criado levando em conta os exemplos de modelagem de dados criados no modelo conceitual. Exemplo do diagrama de banco de dados estruturado por tabelas:


Pacote EasyPHP ( programa de SGDB ( SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS) Pra criar páginas HMTL necessitamos estar conectados a internet, simplesmente digitamos o código, salvamos com a extensão .htm ou .html e visualizamos o resultado no navegador web. Com o PHP é um pouco mais complicado , para que possamos executar nossas páginas e códigos em nosso computador, temos que ter um servidor instalado. O EasyPHP é uma ferramenta gratuita que monta um Servidor Web em sua máquina com Apache, PHP e MySQL. Para fazer o download do EasyPHP em sua versão mais recente podemos acessar o endereço http://www.easyphp.org/download.php e clicar no local indicado.

Você será encaminhado para seguinte página

Click na opção 14.1 VC11 para 7 ou 8

Agora click na opção download o


Click na opção download only

Agora o download do EasyPHP acontecerá e você poderá instala-lo em sua máquina. Instalando o EasyPHP Ao clicar no ícone do programa aparecerá a seguinte tela:


Clique eu executar e comece a instalar o seu EasyPHP, seguindo os passos de instalação que será mostrados na tela. Escolha um idioma, o mais utilizado é o idioma English.

Escolha a opção I accept the agreement e click novamente em next. Avance clicando em next

Avance clicando em next

Nesta janela você verifica o caminho onde ficará a sua pasta do EasyPHP.

Avance clicando em next

Aqui você clicará em install para instalar finalmente o EasyPHP na sua máquina.

OBS: Existem outros programas que também rodam o php no servidor local, como WAMP e XAMP mas a configuração dele é um pouco diferente do EasyPHP


Dicionário MySQL Vamos agora conhecer o significado de cada linha de código da liguagem MySQL para não nos perdermos na hora de elaborar nossos códigos.

Create- Criar Insert – Inserir Drop- Deletar Update- Atualizar ou modificar Select- Selecionar Where- Onde From – da Table- tabela DataBase- Banco de dados Alter- Adicionar ou remover Delete- Apagar Use – Usar ou entrar Agora iremos entender cada linha de comando do MySQL

Acessando o phpmyadmin que faz parte do pacote do programa EasyPHP, podemos começar a utilizar os códigos do MySQL para criação de nossos bancos de dados. São esses códigos que vão nos dar o controle dos dados que existem em nosso. Com o EasyPHP instalado em nossa máquina transformamos o nosso computador em um servidor ( um sistema de computação centralizada que fornece serviços a uma rede de computadores) local para testarmos as nossas páginas antes de enviarmos para um servidor de internet.


Antes de começarmos a utilizar o MySQL iremos entender como podemos acessar o phpMyadmin do EasyPHP.

Primeiro no menu iniciar procure o ícone do EasyPHP e click para ativa-lo.

Uma vez ativado ele aparecerá dentro da seta que fica próximo ao ícone de internet e de som na sua barra de tarefas. Agora você poderá acessar clicando com o botão direito em cima do ícone do EasyPHP e escolhendo a opção Local Web. Na página que abrirá você deverá clicar em uma casinha que significa home e escolher a opção open em Mysql Administration.

Podemos acessar a página local do EasyPHP digitando este número na barra de endereços.

Clicar aqui e escolher a opção open em MySQL Administration.


Agora que aprendemos a acessar o phpmyadmin vamos começar a entender os códigos de MySQL

Criando banco de dados. Como o nome já diz esta opção serve para criar o nosso banco de dados que irá conter as tabelas que serão administradas pelas nossas páginas de php.

Código – Create DataBase; CREATE DATABASE JPI; Após criar o banco de dados onde serão colocadas as suas tabelas você deverá entrar no seu banco com o seguinte comando: Abrindo o banco que vai inserir as tabelas. USE JPI; Agora você poderá começar a criar as suas tabelas pois abriu o banco onde elas serão inseridas. Criando a primeira tabela.

CREATE TABLE fornecedores ( codigo int(4) AUTO_INCREMENT, nome varchar(30) NOT NULL, email varchar(50), PRIMARY KEY (codigo) ); Esse comando parece complicado não é mesmo, então vamos agora descomplicar. Foi criada a tabela fornecedores ( CREATE TABLE fornecedores), dentro desta tabela foram criados os atributos que serão pedidos ao usuário ( código , nome e email). Código int (4) - int significar que só poderá aparecer número e 4 a quantidade de números que pode aparecer. AUTO_INCREMENT ( O NÚMERO É GERADO AUTOMATICAMENTE FAZENDO O REGISTRO DE QUEM ACESSA O FORMULÁRIO ).

Nome- Varchar (30) – Varchar significa texto é geralmente utilizado para que se possa definir a quantidade de caracteres que o usuário poderá digitar. NOT NULL – Significa que este campo tem o seu preenchimento obrigatório. Email- Varchar ( 50 )- Aqui foi definido varchar pois email terá que ficar em forma de texto e o usuário só poderá digitar até 50 caracteres. PRIMARY KEY (código ) – É a chave primaria, ela é definida para que um mesmo número não se repita diversas vezes. Geralmente colocamos como chave primaria o código, RG e CPF.


Vamos agora inserir alguma informação em nossas tabelas . INSERT INTO `fornecedores`(`codigo`, `nome`, `email`) VALUES (null,"lorena","lorena@ig.com.br")

Tradução: Insira dentro da tabela fornecedores ( não precisa colocar table ) os seguintes dados, código, nome e email ( null, “Ricardo”, rico@gmail.com); Vamos aprender agora a visualizar o conteúdo da nossa tabela COMANDO SELECT. SELECT*FROM ‘TABELA’ Ex:SELECT * FROM `fornecedores` Este comando seleciona todo o conteúdo da tabela que foi pedida no código. COMANDO SELECT WHERE Agora vamos selecionar um nome na nossa tabela.

SELECT "nome_coluna" FROM "nome_tabela" WHERE "condição" Ex: SELECT `codigo`, `nome`, `email` FROM `fornecedores` WHERE nome="thomas"

OBS: Se você quiser selecionar mais de um dado da tabela escreva o código da seguinte maneira: Ex: SELECT `nome`, `email` FROM `fornecedores` WHERE nome="ana" and email=”ana@ig.com.br” A Cláusula WHERE também aceita como operadores de comparação além do = (igual), < (menor), <= (menor ou igual), > (maior), >= (maior ou igual), <> (diferente). Também temos as comparações especiais IS NULL e IS NOT NULL.

Vamos ver o exemplo usando o operador de comparação <> (diferente) SELECT * FROM `fornecedores` WHERE nome<>"ana"

SELECT DISTINCT A palavra-chave SELECT permite-nos obter todas as informações de uma coluna (ou colunas) numa tabela. E se apenas pretendermos selecionar cada elemento DISTINCT? Isso é facilmente concretizável na linguagem SQL. Basta adicionar DISTINCT após SELECT. A sintaxe será a seguinte: SELECT DISTINCT "nome_coluna" FROM "nome_tabela";


Agora vamos ver como fica se quisermos verificar apenas a coluna nome da tabela fornecedores SELECT DISTINCT nome FROM fornecedores; Desta maneira a unica coluna que aparecerá na visualização será nome.

Agora vamos ver como podemos atualizar os dados já inseridos em uma tabela com o comando UPDATE. A sintaxe básica do comando UPDATE é a seguinte: UPDATE `tabela` SET `email`="conteúdo que será trocado"( neste caso todos os emails serão trocados) veja como fica no exemplo abaixo: Ex: UPDATE `fornecedores` SET `email`=infoleka@gmail.com Neste comando todos os emails da sua tabela foram trocados para infoleka@gmail.com Até agora, vimos como obter dados de uma tabela utilizando os comandos SELECT e WHERE. Contudo, frequentemente precisamos de listar os resultados por uma ordem em particular. Pode ser por ordem ascendente, descendente, ou com base no valor numérico ou valor de texto. Nesses casos, podemos utilizar a palavra-chave ORDER BY para alcançar o objetivo. A sintaxe para uma instrução ORDER BY é a seguinte: SELECT "nome_coluna" FROM "nome_tabela" [WHERE "condição"] ORDER BY "nome_coluna" [ASC, DESC];

Os símbolos [] significam que a instrução WHERE é opcional. Contudo, se existir uma cláusula WHERE, esta precede a cláusula ORDER BY. ASC significa que os resultados serão apresentados por ordem ascendente eDESC significa que os resultados serão apresentados por ordem descendente. Se não for especificada qualquer uma, o padrão é ASC.

É possível ordenar mais do que uma coluna. Nesse caso, a cláusula ORDER BY acima torna-se assim:

ORDER BY "nome_coluna1" [ASC, DESC], "nome_coluna2" [ASC, DESC]

Assumindo que selecionamos a ordem ascendente para ambas as colunas, o resultado será ordenado pela ordem ascendente de acordo com a coluna 1. Se existir uma relação para o valor da coluna 1, ordenamos por ordem ascendente a coluna 2.


Por exemplo se temos uma tabela fornecedores com nome de seus produtos,valores e a data lançada e queremos que ela apareça em ordem descendente (desc) então iremos fazer a instrução desta forma: SELECT nome, valor, data FROM produtos ORDER BY nome DESC; Se fosse em ordem ascendente seria assim:

SELECT nome, valor, data FROM produtos ORDER BY nome asc;

Atualização de um único registro com a cláusula WHERE

Neste primeiro exemplo não utilizamos a cláusula WHERE, e o comando UPDATE mudou todos os registro para o email que foi determinado, é claro que isto não é um comportamento ideal para a maioria de nossa necessidades. Vamos realizar uma atualização de um só registro desta vez. Para isto vamos restringir o comando UPDATE com a cláusula WHERE. Ex: UPDATE `fornecedores` SET `nome`="alexandra" WHERE codigo=2 UPDATE `fornecedores` SET `nome`="leka" WHERE codigo=3

Explicação: Faça alteração na tabela fornecedores para o nome Alexandra onde o código seja de número 2. Faça alteração na tabela fornecedores para o nome leka conde o código seja de número 3 Conclusão

O comando SQL UPDATE utilizado com a cláusula WHERE torna-se uma ferramenta poderosa para desenvolvedores manipularem dados no MySQL. O fato de a cláusula SET aceitar atribuição de valores de expressões possibilita que trabalhemos com o valores já existentes no registro manipulado, o que também expande nosso controle sobre os dados.


Exercícios de Fixação Agora vamos exercitar tudo o que aprendemos sobre mysql

1) O que é a linguagem MySQL? __________________________________________________________________________ __________________________________________________________________________ __________________________________________________________________________ 2) O MySQL atualmente é um dos maiores SGBD’s do mundo, com mais de 10 milhões de instalações e vem sendo usado inclusive em projetos de grande porte em grandes empresas. Cite pelo menos duas dessas grandes empresas que utilizam o MySQL. __________________________________________________________________________

3) Onde foi criado o MySQL e qual o nome dos desenvolvedores? ________________________________________________________________________ ________________________________________________________________________ 4) Qual a característica principal do MySQL? _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________

5) Defina modelagem de dados:

__________________________________________________________________________ __________________________________________________________________________


6) Diferencie modelo conceitual de modelo lógico:

________________________________________________________________________ ________________________________________________________________________ ________________________________________________________________________ _______________________________________________________________________ 7) Para trabalharmos com o MySQL precisamos instalar um servidor em nossa máquina pois é necessário testar as páginas que vamos criar para depois colocar em um servidor da web. Cite os principais programas que podemos instalar para transformar nosso PC em um servidor local. ________________________________________________________________________ 8) Qual o número que devemos digitar na barra de endereço para acessar a página inicial do EasyPHP? _______________________________________________________________________ 9) Cite os comandos básicos do MySQL e descreva os seus sifnificados em português:

_______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ _______________________________________________________________________ 10) Escreva os seguintes códigos: Criar banco de dados, Entrar no banco de dados, criar tabela, inserir dados na tabela, selecionar determinado dado na tabela. Criar banco de dados

Criar tabela

Selecionar dados de uma das colunas da tabela

Entrar no banco de dados

Inserir dados nesta tabela

Fazer uma mudança de dados na tabela

Selecionar dados em ordem ascendente.


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.