A extensão MySQLi do PHP

A extensão MySQLi do PHP

O PHP possui a extensão MySQL nativamente desde a versão 4. No PHP 5 foi adicionada a extensão MySQLi, que é uma versão mais completa e recente da antiga extensão MySQL.

Além disso, a extensão MySQLi suporta orientação e objetos. Essa nova extensão também viabiliza o uso de novos recursos do MySQL, como Stored Procedures ou Views.

A extensão MySQLi necessita do servidor MySQL 4.1 ou superior.

NOTA: A partir da versão 5.5 do PHP, a extensão MySQL (que usa funções mysql_*) está obsoleta. Leia mais sobre isso neste link.

Como Usar MySQLi

Para realizar a conexão com a base de dados, basta isto:

$Connection = new mysqli( 'servidor', 'usuario', 'senha', 'nome_da_db' );

Por exemplo:

$Connection = new mysqli( 'localhost', 'root', 'passwd', 'test' );

Se a conexão for bem sucedida, $Connection será um objeto, que será usado para consultas posteriores e outras ações com a base de dados.

Para realizar uma consulta, por exemplo, basta usar o método query() e percorrer com fetch_assoc(), muito semelhante ao que se fazia usando a extensão mysql:

$exec = $Connection->query( 'SELECT dados FROM tabela' );
 
while ( $f = $exec->fetch_assoc() )
{
    print_r( $f );
}

A lista completa de propriedades e métodos da classe MySQLi pode ser encontrada no link abaixo:

http://php.net/manual/pt_BR/book.mysqli.php

Como Migrar de MySQL Para MySQLi

Escrevi um artigo mostrando como migrar seus scripts PHP de MySQL para MySQLi.

Clique Aqui para aprender como migrar de MySQL para MySQLi

 

Curso Completo de MySQLi

Se você procura um curso completo sobre MySQLi, abordando os principais comandos (CREATE TABLE, INSERT INTO, UPDATE, SELECT etc), clique aqui e aproveite a promoção especial do Curso de MySQLi.

Você vai aprender a realizar as principais operações com bancos de dados, de forma simples, organizada e otimizada.

Clique aqui e conheça o Curso de MySQLi

 

Aprenda Ainda Mais

15 Dicas, Boas Práticas e Fundamentos do PHP

Conheça Dicas FUNDAMENTAIS para programar em PHP de forma Profissional

Não se considere Programador PHP sem antes ler este guia e adotar estas práticas!

Baixe gratuitamente este guia com 15 Dicas de PHP

The following two tabs change content below.
Graduado em Ciência da Computação, pela Universidade Federal do Paraná (UFPR), é desenvolvedor de software desde 2008, com foco em Desenvolvimento Web com PHP.
  • Roberto

    Parabéns pela iniciativa, Beraldo.

    Tenho um pequeno conhecimento em MySQLi, e todos os exemplos que vi e por onde aprendi (em um livro gringo) ele demonstrava o uso do MySQLi com uma abordagem procedural, e não OO, vou procurar me informar mais sobre o assunto.

  • Andrey Knupp

    Concordo com a materia beraldo , mais eu deixei de usar MySQLi a um tempo e começei a usar PDO alem de ser uma DLL propia dele , fornece suporte a varios SGBD’s com metodos bem interessantes e seguros .. alem de haver PDO em 90% dos servidores web , ja o MySQLi não e todos que tem a extenção
    :) , mais foi boa a dica .. tem que parar de usar mysql_ e começar a pensar no futuro

  • @Andrey

    Mexi com PDO poucas vezes e acho meio inútil. É uma tentativa de abstração de base de dados, mas está longe disso. Você pode mudar facilmente de SGBD, mas não pode usar funções nativas de cada SGBD. Então não serve pra muita coisa.

    Não recomendo PDO nem MySQLi, muito menos MySQL (comum). Acho mais fácil usar PostgreSQL de uma vez. A Oracle já acabou com o OpenOffice. O MySQL está na mira também. :P

    • PAulo

      mysql na mira? piada do seculo

  • Andrey Knupp

    Certamente, a PDO suporta vários drivers, PgSQL, Firebird, SQLite até, então idependente do SGDB que você usa .. PDO dá suporte =) , é o MySQL ainda vai demorar muito a sair de mercado , a oracle pode ter 2 motivos que eu enchergo pra tirarem o mysql de mercado, 1: não querer dar mais suporte, 2: pensar que se tirar ele de mercado, mais pessoas vão usar ORACLE.
    eu já acho isso muito dificil de acontecer, pois se tirarem o MySQL que é um dos banco de dados mais usados do mundo, não va atrair clientes pra eles, muito pelo contrario, ele vai entregar os pontos pra concorrencia, PgSQL .. ou outro aí

  • Leandro Cissoto

    É mto pessimismo pensar que o banco de dados mais utilizado no mundo, que é competente, estável e Open Source vá deixar de ter suporte.
    Mesmo pq há uma comunidade imensa e ativa de adeptos desse banco de dados.
    Além disso, cada vez mais pessoas usam o mysql por ser gratuito. Então pq diabos a oracle deixaria de lado um produto que tem notoriedade ?!

  • Me salvou!

    Ótima postagem, sucesso!