mysql

PHP + MySQL + jQuery,Tutoriais

Trabalhando com o banco de dados MySQL (Básico)

14 mar , 2014  

Hoje vamos falar sobre o banco de dados MySQL que é o tipo do banco de dados que vamos utilizar na maioria das publicações.

Como já mostramos pra vocês como configurar um servidor apache em diversos sistemas operacionais (Windows, Linux e MacOS) com o PhpMyAdmin instalado. Basta você criar um banco de dados diretamente na interface.

Nessa primeira publicação vamos falar sobre como criar um banco e como utilizar ele no PHP.

Teremos mais 4 publicações falando de banco de dados MySQL.

1 – MySQL – Básico (Criação e utilização no PHP)
2 – MySQL – Intermediário (INNER JOIN, LEFT JOIN, RIGHT JOIN, GROUP BY, HAVING, UNION e Aliases)
3 – MySQL – Avançado (Relacionamentos de tabelas)
4 – MySQL – Backup (Realizar backup do banco de dados)
5 – MySQL – Segurança (Métodos de manter a segurança de informação)

Primeiro você acesse a seguinte página no seu navegador:

http://localhost/phpmyadmin/

Após realizar o login, podemos criar um banco de dados para começar o nosso tutorial:

1

Agora para criar uma tabela nessa banco de dados:

2

E adicionar os campos dessa tabela:

4

Detalhe que apenas o primeiro item, que no caso é a ID, você vai colocar como A_I (Auto Incremento), ou seja, quando você salvar dados nessa tabela, vai salvar os registros em forma ordenada (1,2,3,4,..). E também vamos selecionar o índice dele como PRIMARY KEY.

Vamos começar o tutorial com a parte mais importante, os códigos que vamos utilizar em nossos projetos.

Vamos utilizar o código em PHP.

Iniciando nosso código PHP, pela conexão ao banco:

<?php 
     $conexao = mysql_connect("localhost", "usuario", "senha") or die("Erro ao tentar se conectar!");
?>

Agora vamos selecionar o banco de dados que vamos utilizar no projeto:

<?php 
    $banco = mysql_select_db("banco", $conexao) or die("Erro ao selecionar o banco!");
?>

Pronto, com esses dois comandos você pode executar comandos como INSERT, UPDATE, DELETE, CREATE e SELECT.

Você precisa criar alguma tabela nova com campos:

<?php 
    $comando = "CREATE TABLE `tabela1` (`id` INT AUTO_INCREMENT PRIMARY KEY, `nome` VARCHAR(255), `cidade` VARCHAR(255))";
    mysql_query($comando , $conexao);
?>

Pronto, nossa tabela ‘tabela1’ foi criada com os campos ‘id’, ‘nome’, ‘cidade’. é interessante quando você utilizar algum comando SQL, sempre usar esta aspa ` para campos e tabelas e essa aspa ‘ quando é alguma variavel que você vai consultar, alterar ou incluir no banco.

Falando um pouco do tipo de valores númericos:

BIT, TINYINT, SMALLINT, INT, MEDIUMINT, BIGINT, FLOAT, DOUBLE e DECIMAL

Tipos de valores de data:

DATE, TIME, DATETIME, TIMESTAMP e YEAR

Tipos de dados string:

CHAR, TEXT, VARCHAR, ENUM, SET, LONGTEXT, LONGBLOB, MEDIUMTEXT, MEDIUMBLOB, BLOB, TINYTEXT, TINYBLOB e NATIONAL

Voltando para os comandos..

Para alterar o tipo de um campo de uma tabela, usamos o comando:

<?php 
    $comando = "alter table `tabela1` modify `cidade` char(40)";
    mysql_query($comando , $conexao);
?>

Para adicionar um novo campo a uma tabela:

<?php 
    $comando = "alter table `tabela1` add `pais` varchar(255)";
    mysql_query($comando , $conexao);
?>

Para remover uma tabela, usamos o comando:

<?php 
    $comando = "drop table `tabela1`";
    mysql_query($comando , $conexao);
?>

É interessante também falar dos operadores lógicos e de comparação nas consultas:

Operadores lógicos: and, or e not
Operadores de comparação: >, >=, <, <=, = , != (ou <>)

Temos como exemplo de operador lógico e também de comparação:

<?php 
    $comando = "SELECT * FROM `tabela1` WHERE `nome` = 'Rodrigo' AND `nome` = 'Julio'";
    mysql_query($comando , $conexao);
?>

Vamos falar de mais alguns recursos nas consultas:

DISTINCT é uma cláusula usada para remover duplicações de linhas no resultado da consulta.

<?php 
    $comando = "SELECT DISTINCT(cidade) FROM `tabela1`";
    mysql_query($comando , $conexao);
?>

Temos também o ORDER, para ordenar da forma que bem entendemos uma consulta, podendo utilizar ainda o ASC (crescente) e o DESC (decrescente):

<?php 
    $comando = "SELECT * FROM `tabela1` ORDER BY id ASC";
    mysql_query($comando , $conexao);
?>

Para saber alguns números referente as tabelas, temos:

COUNT – Contador de ocorrências

<?php 
    $comando = "SELECT COUNT(cidade) FROM `tabela1`";
    mysql_query($comando , $conexao);
?>

SUM – Somador de valores de atributos numéricos

<?php 
    $comando = "SELECT SUM(idade) FROM `tabela1`";
    mysql_query($comando , $conexao);
?>

MAX / MIN – Maior / Menos valore de um atributo

<?php 
    $comando = "SELECT max(id) FROM `tabela1`";
    mysql_query($comando , $conexao);
?>

Voltando um pouco para as principais consultas e comandos do MySQL..

Vamos inserir um registro na tabela com o INSERT:

<?php 
    $comando = "INSERT INTO `exemplo` (`nome`,`email`) VALUES ('Rodrigo','rodrigo@teste.com.br')";
    mysql_query($comando , $conexao);
?>

Vamos alterar esse registro com o UPDATE:

<?php 
    $comando = "UPDATE `clientes` SET `nome_cliente` = 'teste2' WHERE `id_cliente` = '1'";
    mysql_query($comando , $conexao);
?>

Vamos deletar esse registro com o comando DELETE:

<?php 
    $comando = "DELETE FROM `clientes` WHERE `id_cliente` = '1'";
    mysql_query($comando , $conexao);
?>

Caso você precise apenas resetar a tabela, ou seja, apagar os registros sem precisar deletar a tabela inteira para refazer:

<?php 
    $comando = "TRUNCATE TABLE `clientes`";
    mysql_query($comando , $conexao);
?>

Agora vamos fazer uma seleção em registros de uma tabela com o comanso SELECT:
Você pode selecionar todos os campos de uma tabela, assim:

<?php 
    $comando = "SELECT * FROM `exemplo` WHERE `nome` = 'Teste'";
    mysql_query($comando , $conexao);
?>

Como também pode selecionar determinados campos de uma tabela:

<?php 
    $comando = "SELECT `nome`,`cidade` FROM `exemplo` WHERE `nome` = 'Teste'";
    mysql_query($comando , $conexao);
?>

Caso você precisa buscar por uma palavra no começo do campo:

<?php 
    $comando = "SELECT `nome`,`cidade` FROM `exemplo` WHERE `nome` LIKE 'a%'";
    mysql_query($comando , $conexao);
?>

Caso você precisa buscar por uma palavra no final do campo:

<?php 
    $comando = "SELECT `nome`,`cidade` FROM `exemplo` WHERE `nome` LIKE '%a'";
    mysql_query($comando , $conexao);
?>

Caso você precise buscar por uma palavra no meio do campo:

<?php 
    $comando = "SELECT `nome`,`cidade` FROM `exemplo` WHERE `nome` LIKE '%a%'";
    mysql_query($comando , $conexao);
?>

Se você precisar saber a quantidade de registros que tem uma determinada tabela:

<?php 
    $comando = "SELECT `nome`,`cidade` FROM `exemplo` WHERE `nome` = 'Teste'";
    $consulta = mysql_query($comando , $conexao);
    $numeroRegistros = mysql_num_rows($consulta, $conexao);
?>

Para utilizar os resultados e armazenar em variáveis:

<?php 
    $comando = "SELECT `nome`,`cidade` FROM `exemplo` WHERE `nome` = 'Teste'";
    $consulta = mysql_query($comando , $conexao);
    $row = mysql_fetch_row($consulta);
    $nome = $row[0];
    $cidade= $row[1];
?>

Para utilizar os resultados em um bloco de repetição:

<?php 
    $comando = "SELECT `nome`,`cidade` FROM `exemplo` WHERE `nome` = 'Teste'";
    $consulta = mysql_query($comando , $conexao);
    while ($row = mysql_fetch_array($consulta )) {  
          echo $row['nome']."
";  
    }
?>

E para finalizar é importante sempre fechar a conexão:

<?php 
    mysql_close($con); 
?>

Bom, por hoje é só.

Nos próximos posts vamos aprender mais técnicas de utilização dos comandos do MySQL.

Espero que tenha sido útil e fique a vontade para comentar, dar sugestões e até críticas.

Abraço.

Adicional – Atualizado 17/11/2014:

Selecionando dados entre um período de dados:

<?php 
    $comando = "SELECT `nome`,`idade` FROM `cliente` WHERE `idade` BETWEEN '15' AND '25'";
    mysql_query($comando , $conexao);
?>

, , ,


Comments are closed.