Você está na página 1de 50

MySQL

e
phpMyAdmin
Prof. Gláucya Boechat
gcbcht@gmail.com
MySQL
● O MySQL é o banco de dados mais popular usado com PHP.
– Compatível com as linguagens PHP, C/C++, C#, Java entre
outras.
● Ideal para pequenas e grandes aplicações
● Suporta o padrão SQL
● A combinação PHP/MySQL é multiplataforma
– Pode ser desenvolvida no Windows e usada no plataforma UNIX
● Download
– http://www.mysql.com

2
phpAdmin
● O phpAdmin é um gerenciador de banco de dados
para administrar o MySQL com interface web
● Com o phpAdmin é possível:
– Criar, alterar e remover tabelas e bases de bados
– Inserir, editar e remover dados de tabelas
– Importar e exportar tabelas e bases de dados
– Suporta consultas em SQL
● O aplicativo foi desenvolvido em PHP.
● Download
– http://www.phpmyadmin.net
3
phpMyAdmin

4
phpMyAdmin

5
Classe MySQLi
● Classe que representa uma conexão entre o
PHP e um banco de dados MySQL.
– Atributos
● affected_rows — Número de linhas afetadas pela
operação MySQL anterior
● error — String que descreve o ultimo erro
● server_info — Versão do servidor MySQL
● server_version — Versão do servidor MySQL como um
integer
● …

6
Classe MySQLi
● Métodos
__construct()
● Abre uma conexão com servidor MySQL
close()
● Fecha uma conexão aberta anteriormente
select_db()
● Seleciona uma base de dados(database)
query()
● Realiza uma consulta na base de dados

7
Classe MySQLi_Result
● Representa o conjunto de resultados da
consulta feita à base da dados(database)
– Atributos
● num_rows — Número de linhas retornado da consulta
● field_count — Número de colunas retornada da
consulta
● lengths — Tamanho das colunas da atual linha
retornado da consulta
● current_field — Linha atual retornado do método
fetch_field()

8
Classe MySQLi_Result
● Métodos
mysqli_fetch_assoc()
● Obtem uma linha do conjunto de resultados como uma matriz
associativa
● Percorre resultados de uma pesquisa
mysqli_fetch_row()
● Obtém uma linha do resultado como uma matriz numerada
fetch_object()
● Retorna a linha atual do conjunto de resultados como um objeto
free()
● Libera memória do conjunto de resultados chamado

9
Classe MySQLi
● Conexão com o banco de dado
__construct(string $host,   
string $username, string $passwd,  
string $dbname, string $port,
string $socket);

– Exemplo

$db = new mysqli($host,$username,$passwd); 

10
Conexão com o banco de dado
<?php
    $host = "localhost";
    $username = "root";   $passwd = "";

$db = new mysqli($host,$username,$passwd); 

if ($db­>connect_error){// Verifica a conexão
die('Erro('.$db­>connect_errno.')'
   .$db­>connect_error);
    }else{
        echo "Conexão aberta";
    }
11
?>
Conexão com o banco de dado
<?php
    $host = "localhost";    $username = "root";   
    $passwd = "";           $dbname = 'books';

$db = new mysqli($host,$username,$passwd,$dbname); 

if ($db­>connect_error){// Verifica a conexão
die('Erro('.$db­>connect_errno.')'
   .$db­>connect_error);
    }else{
        echo "Conexão aberta";
    }
12
?>
Classe MySQLi
● Fechar uma conexão aberta anteriormente
com o banco de dados
– Método

bool close ( void );

– Exemplo

$db­>close(); 

13
Conexão com o banco de dado
<?php
 $host = "localhost";
 $username = "root";   $passwd = "";

 $db = new mysqli($host,$username,$passwd); 

 if ($db­>connect_error){// Verifica a conexão
  die('Erro('.$db­>connect_errno.')'.$db­>connect_error);
 }else{
    echo "Conexão aberta";
    $db­>close();
 }
?> 14
Classe MySQLi
● Selecionar uma base de dados

bool select_db(string $dbname);

– Exemplo

$db­>select_db("books"); 

15
Conexão com o banco de dado
<?php
 $host = "localhost";
 $username = "root";   $passwd = "";

 $db = new mysqli($host,$username,$passwd); 

 if ($db­>connect_error){// Verifica a conexão
  die('Erro('.$db­>connect_errno.')'.$db­>connect_error);
 }else{
$db­>select_db("books"); 

$db­>close();
 }
16
?>
Classe MySQLi
● Realizar uma consulta na base de dados

mixed query(string $query)

– Exemplo

$db­>query("SELECT author FROM books"); 

17
Criação da base de dados
● SQL

CREATE DATABASE dbname; 
● PHP

$sql = "CREATE DATABASE ".$dbname;
$db­>query($sql); 

18
Criação da base de dados
<?php
 $db = new mysqli($host,$username,$passwd); 

 if ($db­>connect_error){// Verifica a conexão
  die('Erro('.$db­>connect_errno.')'.$db­>connect_error);
 }
 $dbname = "books";
 $sql = "CREATE DATABASE ".$dbname;
 if($db­>query($sql)){
echo "Base de dados criada com sucesso";
 }
 $db­>close(); 
19
?>
Criação da base de dados

20
Deletar uma base de dados
● SQL

DROP DATABASE dbname; 
● PHP

$sql = "DROP DATABASE ".$dbname;
$db­>query($sql); 

21
Deletar Base de Dados

 $dbname = "books";

 $sql = "DROP DATABASE ".$dbname;

 if($db­>query($sql)){
echo "Base de dados deletada com sucesso";
 }

22
Criação de tabelas
● SQL

CREATE TABLE nome_tabela(
nome_coluna1 tipo_de_dado(size),
nome_coluna2 tipo_de_dado(size),
nome_coluna3 tipo_de_dado(size),

);

23
Tabela Books
create table books( 
isbn char(13) not null primary key,
author char(30),
title char(60),
price float(4,2)
);

24
Criação de tabela
● PHP
– Exemplo
$sql = "CREATE TABLE books( 
isbn char(13) NOT NULL,
author char(30),
title char(60),
price float(4,2),
PRIMARY KEY(isbn)
     )";
$db­>query($sql); 
25
Criação de tabelas
<?php
 $db = new mysqli($host,$username,$passwd,$dbname); 

 $sql = "CREATE TABLE books(isbn char(13) NOT NULL,
author char(30), title char(60),price float(4,2),
PRIMARY KEY(isbn))";

 if($db­>query($sql)){
echo "Tabela criada com sucesso.";
 }
 $db­>close(); 
?>
26
Criação de tabelas

27
Inserção de dados
INSERT INTO nome_tabela
  VALUES (
valor1, valor2, valor3, …
);

Exemplo
INSERT INTO books
VALUES ('8535911693 ', 'Jorge Amado', 
'Capitães da Areia', 30.80);
28
Inserção de dados

$sql = "INSERT INTO books
VALUES('8535911693', 'Jorge Amado', 
'Capitães da Areia', 30.80)";

if($db­>query($sql)){
echo "Livro inserido com sucesso.";
}

29
Inserção de dados

30
Inserção de dados
INSERT INTO nome_tabela ( 
coluna1, coluna2, coluna3, ...) 
   VALUES (
valor1, valor2, valor3, ...);

Exemplo
INSERT INTO books (isbn, author, title,price)
VALUES (
 '8577994171', 'José de Alencar', 'Til', 18.00
); 31
Inserção de dados
$sql = "INSERT INTO books(
 isbn,author, title,price)
VALUES('8577994171','José de Alencar', 
       'Til', 18.00)";

if($db­>query($sql)){
echo "Livro inserido com sucesso.";
}
32
Inserção de dados

33
Insere livro .html
<html>
  <body>
    <h1>Dados do livro</h1>
    <form action="insert_book.php" method="post">
     ISBN:<input type="text" name="isbn" maxlength="13" 
                 size="13"><br />
     Autor:<input type="text" name="author"            
                maxlength="30" size="30"><br />
Título:<input type="text" name="title"             
                  maxlength="60" size="30"><br>
Preço R$:<input type="text" name="price"           
                    maxlength="7" size="7"><br />
<input type="submit" value="Enviar">
    </form>
  </body>
</html>
34
insert_book.php
<?php
  echo 'Livraria';

  $isbn = $_POST['isbn'];
  $author = $_POST['author'];
  $title = $_POST['title'];
  $price = $_POST['price'];

  if (!$isbn || !$author || !$title || !$price){
 echo 'Você não enviou todos os dados necessários.';
 exit;
  }

  $price = doubleval($price);

  //...
35
insert_book.php
  //...
     
  $db = new mysqli("localhost","root","",'books'); 
  if ($db­>connect_error) {  
die('Erro('.$db­>connect_errno.')'
         .$db­>connect_error);
  }

  $sql = "insert into books values(
'".$isbn."','".$author."','".$title."','". $price."')";
 
  if ($db­>query($sql)){
 echo  'Livro inserido com sucesso.';
  }

  $db­>close();  36
?>
Inserção de dados

37
Consulta

SELECT coluna1, coluna2,… 
FROM nome_tabela;

Exemplos

SELECT title, author 
FROM books;

38
Consulta

$sql = "SELECT title, author
 FROM books";

$result = $db­>query($sql);

39
Consulta
$sql = "SELECT title, author 
 FROM books";

if ($result = $db­>query($sql)){

   while ($book = $result­>fetch_object()) {

  echo '<p>Título: '. $book­>title ;
  echo ', Autor: '.$book­>author.'</p>';
   }
   $result­>free();
40
 }
Resultado da consulta

SELECT title, author
FROM books;

41
Consulta

SELECT * 
FROM nome_tabela;

Exemplos

SELECT *
FROM books;

42
Consulta

$sql = "SELECT *
 FROM books";

$result = $db­>query($sql);

43
Consulta
$sql = "SELECT * FROM books";

if ($result = $db­>query($sql)){

   while ($book = $result­>fetch_object()) {
  echo '<p>Título: '. $book­>title ;
    echo '<br/> Autor: '. $book­>author;
    echo '<br />ISBN: '. $book­>isbn;
    echo '<br />Preço: '.$book­>price.'</p>';
   }
   $result­>free();
44
 }
Resultado da consulta
SELECT *
FROM books;

45
Cláusula where
SELECT coluna1, coluna2,… 
FROM nome_tabela
WHERE coluna operador valor;

Exemplos

SELECT title, author 
FROM books
WHERE (price > 15.5);
46
Cláusula where

47
Consulta

$sql = "SELET title, author
 FROM books
 WHERE (price > 15.5)";

$result = $db­>query($sql);

48
Consulta
$sql = "SELECT title, author 
 FROM books 
 WHERE (price > 15.5)";

if ($result = $db­>query($sql)){

   while ($book = $result­>fetch_object()) {

  echo '<p>Título: '. $book­>title ;
  echo '<br/>Autor: '.$book­>author.'</p>';
   }
   $result­>free();
49
 }
Resultado da consulta

SELET title, author
FROM books
WHERE (price > 15.5);

50

Você também pode gostar