MySQL. # apt-get install mysql-server. # apt-get install php5-mysql

Documentos relacionados
PHP INTEGRAÇÃO COM MYSQL PARTE 2

ETEC Dr. Emílio Hernandez Aguilar. Manual Simplificado: MySQL

BANCO DE DADOS WEB. Professor Luciano Roberto Rocha

TECNOLOGIA WEG II PHP com SGBD MYSQL

Armazenamento organizado facilitando SCRUD; Agiliza processo de desenvolvimento de sistemas;

PHP (Seções, Cookies e Banco de Dados)

FTIN FORMAÇÃO TÉCNICA EM INFORMÁTICA. Módulo de Programação Prof. Bruno Maciel

TECNOLOGIA WEG II PHP com SGBD MYSQL:

13 Conectando PHP com MySQL 13.1 Introdução

UFSM COLÉGIO AGRÍCOLA DE FREDERICO WESTPHALEN CURSO SUPERIOR DE TECNOLOGIA EM SISTEMAS PARA INTERNET. Programação para Internet I

PHP e MySQL. Programação de Servidores Marx Gomes Van der Linden.

Curso PHP Aula 08. Bruno Falcão

Programação Web Prof. Wladimir

Programação WEB II. PHP e Banco de Dados. progweb2@thiagomiranda.net. Thiago Miranda dos Santos Souza

Conectando com um banco de Dados

QUESTÃO 4 QUESTÃO 3 QUESTÃO 6 QUESTÃO 5. O código a seguir imprimirá Resultado = 33. <?php $var = 3; echo Resultado =. ($var + 3);?

Database and Applications. Criação, inserção de dados PHP+MySQL

Treinamento em PHP. Aula 7. Ari Stopassola Junior

C A P I T U L O 10 F U N Ç Õ E S I N T E R N A S P H P P A R A B A N C O D E D A D O S

INTRODUÇÃO. No entanto, o que pode ser considerado um produto (resultado) da criação de BDs?

Internet e Programação Web

Passos Preliminares: Acessando a máquina virtual via ssh.

22/05/2012 CRIANDO UM PROJETO COM TELAS ESTRUTURA DA APLICAÇÃO LOGIN BANCO DE DADOS TAREFAS PHP MYSQL PARTE 2

Desenvolvimento de Sistemas Web Prof. Leandro Roberto. Aula 18 JavaScript: Eventos MySQL PHP (insert, update e delete)

Banco de Dados com PHP

Construindo Aplicações Web com. PHPe MySQL. André Milani. Novatec

MySQL + PHP 06/05/2015. IFSC/campus Florianópolis Programação para a WEB Prof. Herval Daminelli

COMANDO DA AERONÁUTICA ESCOLA DE ESPECIALISTAS DE AERONÁUTICA SUBDIVISÃO DE ADMISSÃO E DE SELEÇÃO

Seja Muito Bem-Vindo! Mas Por Quê? MySQLi Com e Sem Orientação a Objetos

Criação Pagina PHP & MySQL

Sensor de temperatura Parte 5 Cleiton Bueno Preparando o ambiente do Banco de dados Mysql

Interagindo com Banco de Dados

DDL DML DCL DTL Tipos Numéricos: INT FLOAT DOUBLE Tipos String: CHAR VARCHAR BINARY BLOB TEXT Tipos Data e Hora: DATE TIME TIMESTAMP YEAR

Introdução ao Sistema. Características

Prof. Carlos Majer Aplicações Corporativas UNICID

GUIA PHP com MYSQL Autor: Everton Mendes Messias

JDBC Java Database Connectivity

Construindo um sistema simples de cadastro de fornecedores em PHP e MySQL.

MySQL. Prof. César Melo. com a ajuda de vários

PHP INTEGRAÇÃO COM MYSQL PARTE 1

Linguagem SQL Restrições, Triggers e Views

Como Instalar Nagios 4 E Monitorar Seus Servidores no Ubuntu 14 Introdução

Como usar o SQLReactor para persistência de objetos PHP num banco de dados

Autor: Ricardo Francisco Minzé Júnior - ricardominze@yahoo.com.br Desenvolvendo aplicações em camadas com PHP 5.

Personal Home Page PHP. Prof. Luiz Claudio F. de Souza

Trabalhando com MySQL: Uma Introdução

Roteiro 9 - SQL Básico: chave estrangeira, operadores de comparação e operadores booleanos

LABORATÓRIO VII. LAMP Server Documento versão 0.1. Aluno: Paulo Henrique Moreira Gurgel #

PHP e MySQL Autenticação de Usuários

Descrição Tinyint[(M)] Inteiro pequeno. Varia de 128 até +127

Esta aula tem o objetivo de nos orientar durante este período em nossas aulas de Banco de Dados, não tem a pretensão de ser a única fonte de

Programação Web Professor Nícolas Trigo 1 PHP

APOSTILA BÁSICA DE MYSQL

SQL CREATE DATABASE. MySQL, SQL Server, Access, Oracle, Sybase, DB2, e outras base de dados utilizam o SQL.

MSN-Proxy v0.7 no Debian 5 (Atualizado)

Prova de pré-requisito

Desenvolvimento de Aplicações para Internet Aula 9

PL/SQL. Profa. Dra. Cristina Dutra de Aguiar Ciferri. Laboratório de Bases de Dados PL/SQL

APOSTILA DE LINGUAGEM DE PROGRAMAÇÃO IV

Flickr, shindotv/ / BASES DE DADOS. Laboratórios de Informática João Paulo Barraca, André Zúquete, Diogo Gomes

Banco de Dados SQL (Structured Query Language) Ana Paula Toome Wauke

6. Introdução à Linguagem PHP

Trabalhando com conexão ao banco de dados MySQL no Lazarus. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011

Modelagem de banco de dados com MySQL Workbench

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE ESCOLA AGRÍCOLA DE JUNDIAÍ EAJ - PRONATEC / REDE etec MÓDULO III DESENVOLVIMENTO PROFESSOR ADDSON COSTA

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

PHP. SQL / MySQL Ligação a base de dados Selecção e visualização de registos Adicionar, Eliminar, Pesquisar e Editar registos

JDBC (Java Database Connectivity) Padrão de Projeto DAO (Data Access Object) Roteiro para instalação do banco de dados e do driver JDBC

Oracle PL/SQL Overview

Prof. Roberto Franciscatto 4º Semestre - TSI - CAFW. Free Powerpoint Templates Page 1

Os dados no MySQL são armazenado em tabelas. Uma tabela é uma colecção de informação relacionada e consiste em colunas e linhas.

Cadastros de dados no MySQL

TECNOLOGIA EM SISTEMAS PARA INTERNET PROJETO DE BANCO DE DADOS

Acesso a Banco de Dados usando C# (Usando o MySql ADO.NET Provider)

PHP Seguro Ernani Azevedo (PROCERGS DRE/ARS Unix)

Virtual Hosting com PureFTPd e MySQL

SISTEMA GERENCIAMENTO DE PRODUTOS PHP E MySQL 1. APRESENTAÇÃO

BANCO DE DADOS WEB AULA 12. manipulação de dados atualização e exclusão de registros. professor Luciano Roberto Rocha.

Faça um Site PHP 5.2 com MySQL 5.0 Comércio Eletrônico

Leonardo Gresta Paulino Murta

Curso de PHP e MySQL. Ministrantes: Flávio S. Gonzaga bim@inf.ufsc.br Guilherme Birckan birckan@inf.ufsc.br

O que são Bancos de Dados?

Linux. - Comando básicos

No Fedora, instalamos os pacotes "mysql" e "mysql-server", usando o yum:

Manipulação de Banco de Dados com Java. Ms. Bruno Crestani Calegaro Maio/ 2015

BANCO DE DADOS BANCO DE DADOS. Prof. Patrícia Lucas 3º Trimestre

PostgreSQL. André Luiz Fortunato da Silva Analista de Sistemas CIRP / USP alf@cirp.usp.br

Uniao Educacional e Tecnologica Impacta- Uni Impacta

Trabalho do Grupo Nº 3

FTIN FORMAÇÃO TÉCNICA EM INFORMÁTICA. Módulo de Programação Prof. Flávio Dantas

Marcos Alexandruk Marcos Alexandruk

SQL Linguagem de Definição de Dados. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

Python Acessando o Banco de Dados MySQL

SQL. Autor: Renata Viegas

COMPONENTES DA BIBLIOTECA ZEOSLIB. Paleta Zeos Access no Lazarus. TZConnection

Introdução à Engenharia da Computação. Banco de Dados Professor Machado

Aula 1 Acesso a Banco de Dados

Transcrição:

MySQL Para usar o MySQL com o PHP é necessário ter o servidor MySQL instalado e o pacote php5-mysql, onde no Debian ou Ubuntu podemos instalar esses pacotes com o comando apt-get. # apt-get install mysql-server # apt-get install php5-mysql Todas as funções mysql que veremos exibem mensagens de erro, caso ocorra erros e deseje personalizar suas próprias mensagens de erro, use o arroba @ antes da função mysql, por exemplo @mysql_connect. Para utilizar as funções mysql abaixo usaremos o banco de dados teste, o usuário aluno1 e a tabela produtos com os campos (CodigoProduto, Produto e Preco) criados anteriormente na aula de instalação e configuração do servidor LAMP (Linux, Apache, Mysql, Php e PhpMyAdmin). Produtos CodigoProduto Produto Preco 1

mysql_connect int mysql_connect(string [Host [:porta] [:caminho_socket]], string [Usuário], string [Senha]) Faz uma conexão com o servidor MySQL, retornando TRUE se for executado com sucesso, caso contrário retorna FALSE. No campo Host pode ser usado um endereço IP (192.168.1.10) ou um nome de host (mysql.dominio.com.br), normalmente é usado o endereço local localhost ou 127.0.0.1. É possível também especificar uma porta ( localhost:3306 ) ou um caminho para o socket do MySQL ( localhost:/var/run/mysqld/mysqld.sock ). com o banco mysql_pconnect 2

int mysql_pconnect(string [Host [:porta] [:caminho_socket]], string [Usuário], string [Senha]) É idêntica a função mysql_connect, com a diferença que o link identificador de conexão fica de forma persistente, depois que o script Php encerra a conexão não será fechada. Isso torna o início de uma conexão mais rápido se o mesmo script Php for aberto novamente ou por outro script. $conexao=@mysql_pconnect("localhost","aluno1","senha") or die ("Erro ao conecta com o banco mysql_close int mysql_connect(int Identificador) 3

Fecha uma conexão com o servidor MySQL especificado um identificador de conexão usando a função mysql_connect, está função é obrigatória em todos scripts de conexão com o banco de dados. com o banco mysql_error string mysql_error(int Identificador) Exibe a mensagem de erro da última função MySQL $conexao=@mysql_connect("localhost","qualquerusuario","senha") or die ("Erro: ". 4

Erro: Access denied for user 'qualquerusuario'@'localhost' (using password: YES) mysql_error string mysql_error(int Identificador) Exibe os números dos erros internos do servidor MySQL $conexao=@mysql_connect("localhost","qualquerusuario","senha") or die ("Númer do 5

Número do erro: 1045 mysql_db_query int mysql_db_query(string Banco, string consultasql, int Identificador) Seleciona um banco de dados no servidor MySQL e executa uma consulta SQL usando um identificador, retorna TRUE se for executado com sucesso e FALSE se ocorrer erro. O exemplo abaixo seleciona o banco de dados teste com a função mysql_db_query e executa a consulta SQL SELECT na tabela produtos. # seleciona o banco teste, e executa a consulta SELECT 6

$resultado = mysql_db_query("teste","select * FROM produtos",$conexao); if(!$resultado) echo "Não foi possível fazer a consulta no banco"; else echo "A consulta foi executada com sucesso!!!"; A consulta foi executada com sucesso!!! mysql_select_db int mysql_select_db(string Banco, int Identificador) Seleciona um banco de dados especificado no servidor MySQL usando um identificador opcionalmente, retorna TRUE se for executado com sucesso e FALSE se ocorrer erro. 7

O exemplo abaixo seleciona o banco de dados teste usando a função mysql_select_db usando o link identificador conexao com a função mysql_connect # seleciona o banco teste, e executa a consulta SELECT mysql_query int mysql_query(string consultasql, int Identificador) Executa uma string SQL no banco de dados MySQL especificado por um identificador opcionalmente e exibe o resultado da consulta ao banco, retorna FALSE se ocorrer erro. 8

O exemplo abaixo executa a string SQL SELECT usando a função mysql_query # seleciona o banco teste, e executa a consulta SELECT # seleciona a tabela de produtos $stringsql = "SELECT * FROM produtos"; # executa a consulta SQL $consulta = mysql_query($stringsql,$conexao); mysql_affected_rows int mysql_affected_rows(int Identificador) Retorna o total de linhas afetadas por uma consulta SQL INSERT, UPDATE ou DELETE, com exceção na consulta DELETE sem especificar a cláusula WHERE que retorna 0. 9

O exemplo abaixo conecta ao servidor localhost usando o usuário aluno1 ao banco de dados teste, insere um linha de registro na tabela produtos, executa a consulta SQL com o comando mysql_query e exibe o resultador com mysql_affected_rows. # seleciona o banco teste mysql_select_db("teste",$conexao) or die ("Erro ao conectar a banco de dados"); # insere um registro na tabela produtos $Consulta = "INSERT INTO produtos(produto,preco)values('cd','4.99')"; # executa a consulta SQL $Resultado = mysql_query($consulta,$conexao); # exibe o resultado da consulta echo "Foram afetadas: <b>". mysql_affected_rows($conexao). "</b> linha(s)"; Foram afetadas: 1 linha(s) mysql_num_rows 10

int mysql_num_rows(int Resultado) Retorna o número total de linhas de uma consulta SQL. O exemplo abaixo retorna o número total de linhas com a função mysql_num_rows da string SQL SELECT usando a função mysql_query. # seleciona o banco # seleciona a tabela produtos $consulta = "SELECT * FROM produtos"; # executa a string SQL $resultado = mysql_query($consulta,$conexao); # exibe o número total de registros echo "O número total de registros é: <b>". mysql_num_rows($resultado)."</b><br O número total de registros é: 1 11

mysql_num_fields int mysql_num_fields(int Resultado) Retorna o número total de campos de uma tabela. O exemplo abaixo retorna o número total de campos com a função mysql_num_fields da string SQL SELECT usando a função mysql_query. # seleciona o banco # seleciona a tabela produtos $consulta = "SELECT * FROM produtos"; # executa a string SQL $resultado = mysql_query($consulta,$conexao); # exibe o número total de registros echo "O número de campos é:<b>".mysql_num_fields($resultado)."</b><br>\n"; 12

O número total de campos é: 3 mysql_list_dbs int mysql_list_dbs(int Identificador) Retorna todas as tabelas do banco de dados usando uma conexão com um identificador. Para retornar o nome das tabelas, use a função mysql_tablename. O exemplo abaixo retorna os bancos de dados usando a função mysql_list_dbs, o número total de bancos com a função 13

mysql_num_rows e exibe os nomes dos bancos usando o loop for junto com a função mysql_tablename começando a partir de 0 (banco1 0, banco2 1,...). $conexao=@mysql_connect("localhost","root","senha_root") or die ("Erro ao conec # seleciona as tabelas do banco teste $bancos = mysql_list_dbs($conexao) or die ("Erro ao acessar o banco ".mysql_err # exibe todos os bancos for($x=0; $x < mysql_num_rows($bancos); $x++) { echo "Banco $x: ". mysql_tablename($bancos, $x)."<br>\n"; } Banco 0: information_schema Banco 1: mysql Banco 2: teste... mysql_list_tables 14

int mysql_list_tables(string Banco, int Identificador) Retorna todas as tabelas do banco de dados usando uma conexão com um identificador. Para retornar o nome das tabelas, use a função mysql_tablename. O exemplo abaixo é idêntico ao exemplo anterior com a função mysql_list_dbs. $conexao=@mysql_connect("localhost","root","senha_root") or die ("Erro ao conec # seleciona as tabelas do banco teste $tabelas = mysql_list_tables("mysql",$conexao) or die ("Erro ao acessar o banco # exibe todas as tabelas do banco for($x=0; $x < mysql_num_rows($tabelas); $x++) { echo "Tabela $x: ". mysql_tablename($tabelas, $x)."<br>\n"; } 15

Tabela 0: columns_priv Tabela 1: db Tabela 2: func... mysql_tablename string mysql_tablename(int Resultado, int Indice) Exibe o nome de uma tabela em um banco de dados. Para retornar o total do número de tabelas, use a função mysql_num_rows. O exemplo abaixo é idêntico ao exemplo anterior com a função mysql_list_tables. $conexao=@mysql_connect("localhost","root","senha_root") or die ("Erro ao conec # seleciona as tabelas do banco teste $tabelas = mysql_list_tables("mysql",$conexao) or die ("Erro ao acessar o banco 16

# exibe todas as tabelas do banco for($x=0; $x < mysql_num_rows($tabelas); $x++) { echo "Tabela $x: ". mysql_tablename($tabelas, $x)."<br>\n"; } Tabela 0: columns_priv Tabela 1: db Tabela 2: func... mysql_fetch_array array mysql_fecth_array(int Resultado, int TipoResultado) Exibe um array de linhas de registros de uma tabela no banco de dados. Esta função retorna uma lista indexada com os nomes dos campos da tabela como índices, é possível também usar valores numéricos para os 17

campos começando de um 1 (campo[1], campo[2],...). O tipo de resultado não é obrigatório, podendo ser: MYQL_ASSOC (índices associativos com os nomes dos campos), MYSQL_NUM (índices numéricos campo[1], campo[2],...) ou MYQL_BOTH (ambos). Exemplo1: O exemplo abaixo exibe as linhas com os registros da tabela produtos em um array com o loop for, onde é usado o nome do campo. # seleciona o banco # seleciona a tabela produtos $consulta = "SELECT * FROM produtos"; # executa a string SQL $resultado = mysql_query($consulta,$conexao); # armazena os campos da tabela $campos = mysql_fetch_array($resultado); # exibe as linhas com os registros da tabela produtos for($x=0; $x <= mysql_num_rows($resultado); $x++) { echo "Produto: ".$campos["produto"]." Preço: ".$campos["preco"]."<br>\n"; } 18

Exemplo2: Este exemplo usa o loop while e exibe os campos usando valores numéricos # seleciona o banco # seleciona a tabela produtos $consulta = "SELECT * FROM produtos"; # executa a string SQL $resultado = mysql_query($consulta,$conexao); # armazena os campos da tabela e os exibe usando indices numéricos campo[1],cam while($campos = mysql_fetch_array($resultado,mysql_num)) { echo "Produto: ".$campos[1]." Preço: ".$campos[2]."<br>\n"; } Produto: CD Preço: 4.99 mysql_fetch_row 19

array mysql_fecth_row(int Resultado) É idêntica a função mysql_fetch_array, com a diferença que exibe um array de linhas de registros de uma tabela no banco de dados, retornando uma lista indexada com os nomes dos campos da tabela como índices, usando valores numéricos para os campos começando de zero 0 (campo[0], campo[1],...). O exemplo abaixo exibe as linhas com os registros da tabela produtos em um array com o loop while, onde é usado o nome do campo. Assim como a função mysql_fetch_array é possível usar o loop for. # seleciona o banco # seleciona a tabela produtos $consulta = "SELECT * FROM produtos"; # executa a string SQL $resultado = mysql_query($consulta,$conexao); # armazena os campos da tabela e os exibe usando indices numéricos campo[0],cam while($campos = mysql_fetch_row($resultado)) { echo "CódigoProduto:<b>".$campos[0]."</b> Produto:<b>".$campos[1]."</b> Preço: } 20

CódigoProduto:1 Produto:CD Preço:4.99 mysql_fetch_object object mysql_fecth_object(int Resultado) Retorna um objeto com atributos referente a linha de registro da tabela. Para especificar os tipos dos campos é necessário utilizar o caractere ->. Este exemplo retorna os valores do campos código do produto, produto e preco da tabela produtos. 21

# seleciona o banco # seleciona a tabela produtos $consulta = "SELECT * FROM produtos"; # executa a string SQL $resultado = mysql_query($consulta,$conexao); # armazena os campos da tabela e os exibe usando indices numéricos campo[0],cam while($campos = mysql_fetch_row($resultado)) { echo "CódigoProduto:<b>".$campos[0]."</b> Produto:<b>".$campos[1]."</b> Preço: } Produto:CD Preço:4.99 mysql_fetch_field object mysql_fecth_array(int Resultado, int TipoCampo) 22

Retorna as propriedades de uma coluna de uma tabela na forma de um objeto que pode ser: name retorna o nome da coluna; table rertorna a tabela a qual pertence a coluna; max_length retorna o tamanho máximo da coluna; not_null retorna 1 se a coluna não for nula; primary_key - retorna 1 se a coluna for uma chave primária; unique_key - retorna 1 se a coluna for uma chave única; multiply_key - retorna 1 se a coluna não for uma chave única; blob retorna 1 se a coluna um campo BLOB usado para imagens; type - retorna o tipo da coluna; unsigned - retorna 1 se a coluna não tiver sinal; zerofill - retorna 1 se a coluna for preenchida com zeros. Para especificar os tipos dos campos é necessário utilizar o caractere ->. # seleciona o banco # seleciona a tabela produtos $consulta = "SELECT * FROM produtos"; # executa a string SQL $resultado = mysql_query($consulta,$conexao); # armazena o nome da tabela $tabela = mysql_fetch_field($resultado); 23

echo "O nome da tabela é: <b>".$tabela->table."</b><br>\n"; # armazena os nomes dos campos da tabela while($campos = mysql_fetch_field($resultado)) { echo "Nome campo:<b>".$campos->name."</b> Tipo:<b>".$campos->type."</b><br>\n" } O nome da tabela é: produtos Nome campo:produto Tipo:string Nome campo:preco Tipo:real mysql_fetch_lengths array mysql_fecth_lengths(int Resultado) Exibe um array com o tamanho de cada campo, retorna FALSE se ocorrer erro e o primeiro campo começa a partir de 0 (campo[0]) usando as funções mysql_fetch_array ou mysql_fetch_row. 24

O exemplo abaixo retorna o comprimento dos campos com a quantidade de caracteres. # seleciona o banco # seleciona a tabela produtos $consulta = "SELECT * FROM produtos"; # executa a string SQL $resultado = mysql_query($consulta,$conexao); # armanzena um array com os nomes do campos $campos = mysql_fetch_row($resultado); # armazena o número de campos $NumeroCampos = mysql_num_fields($resultado); # armazena o comprimento dos campos $ComprimentoCampos = mysql_fetch_lengths($resultado); # exibe o número total de registros for($x=0; $x < $NumeroCampos; $x++) { echo "O comprimeto do $x campo é:<b>".$comprimentocampos[$x]."</b> caractere(s } O comprimeto do 0 campo é:1 caractere(s), e seu valor é:1 O comprimeto do 1 campo é:2 caractere(s), e seu valor é:cd 25

O comprimeto do 2 campo é:4 caractere(s), e seu valor é:4.99 mysql_field_name string mysql_field_name(int Resultado, int IndiceCampo) Retorna o nome do campo começando de zero 0 (campo[0]). Exibe o nome de todos os campos da tabela produtos # seleciona o banco # seleciona a tabela produtos $consulta = "SELECT * FROM produtos"; # executa a string SQL $resultado = mysql_query($consulta,$conexao); # armazena o número de campos $NumeroCampos = mysql_num_fields($resultado); # exibe os nomes dos campos 26

for($x=0; $x < $NumeroCampos; $x++) { echo "O nome do $x campo é: <b>".mysql_field_name($resultado,$x)."</b><br>\n"; } O nome do 0 campo é: codigo_produto O nome do 1 campo é: produto O nome do 2 campo é: preco mysql_field_seek int mysql_field_seek(mysql_field_name (int Resultado, int IndiceCampo)) Esta função Avança movendo o cursor de ponteiro de campo para o campo especificado começando de zero 0. (campo[0], campo[1]). 27

O exemplo abaixo avança o cursor para o campo 2 que está na coluna 2 como mostra o exemplo abaixo: Campo 1 Campo 2 Campo 3 CodigoProduto Produto Preco # seleciona o banco # seleciona a tabela produtos $consulta = "SELECT * FROM produtos"; # executa a string SQL $resultado = mysql_query($consulta,$conexao); # move o cursor de ponteiro para o campo 2 mysql_field_seek($resultado,2) or die ("Não foi possivel ir até a campo 2"); # armazena os campos $campo = mysql_fetch_field($resultado); # exibe o nome o campo echo "O cursor de ponteiro foi movido para o campo:<b>". $campo->name."</b><br O cursor de ponteiro foi movido para o campo:preco 28

mysql_field_type string mysql_field_type(int Resultado, int IndiceCampo) Retorna o tipo de campo de uma tabela começando com zero 0 (campo[0], campo[1]). O exemplo abaixo retorna o tipo de cada campo da tabela, onde é utilizado um loop com for para exibir os tipos dos campos. # seleciona o banco # seleciona a tabela produtos $consulta = "SELECT * FROM produtos"; # executa a string SQL $resultado = mysql_query($consulta,$conexao); # armazena o número de campos $NumeroCampos = mysql_num_fields($resultado); # exibe o tipo dos campos 29

for($x=0; $x < $NumeroCampos; $x++) { echo "O tipo do $x campo é:<b>". mysql_field_type($resultado,$x)."</b> } O tipo do 0 campo é:int O tipo do 1 campo é:string O tipo do 2 campo é:real mysql_field_table string mysql_field_seek(int Resultado, int IndiceCampo) Retorna o nome da tabela de um campo especifico, em um relacionamento de tabelas retorna o nome de diferentes tabelas de cada campo. 30

O exemplo abaixo retorna o nome da tabela do primeiro (0) e segundo campo (1). É possível utilizar também um loop com for ou para os campos. # seleciona o banco # seleciona a tabela produtos $consulta = "SELECT * FROM produtos"; # executa a string SQL $resultado = mysql_query($consulta,$conexao); echo "O nome da tabela do primeiro campo é:<b>". mysql_field_table($resultado, echo "O nome da tabela do segundo campo é:<b>". mysql_field_table($resultado,1 O nome da tabela do primeiro campo é:produtos O nome da tabela do segundo campo é:produtos 31

mysql_field_flags string mysql_field_flags(int Resultado, int IndiceCampo) Retorna o indicador de tipos do campo de uma tabela separados por espaço começando com zero 0 (campo[0], campo[1]). Os seguintes indicadores de tipos de campo podem ser retornados: auto_increment, primary_key, unique_key, multiple_key, binary, blob, enum, not null, timestamp, unsigned e zerofill. O exemplo abaixo retorna os indicadores de tipos de campos dos campos CodigoProduto, Produto e Preco. # seleciona o banco # seleciona a tabela produtos $consulta = "SELECT * FROM produtos"; # executa a string SQL $resultado = mysql_query($consulta,$conexao); # armazena o número de campos $NumeroCampos = mysql_num_fields($resultado); # exibe o tipo dos campos for($x=0; $x < $NumeroCampos; $x++) 32

{ echo "O tipo de indicador do campo $x é:<b>". mysql_field_flags($resul } O tipo de flag do campo 0 é:not_null primary_key auto_increment O tipo de flag do campo 1 é:not_null O tipo de flag do campo 2 é:not_null mysql_field_len int mysql_field_len(int Resultado, int IndiceCampo) Retorna o tamanho de um campo de uma tabela começando com zero 0 (campo[0], campo[1]). 33

O exemplo abaixo retorna o tamanho dos campos. # seleciona o banco # seleciona a tabela produtos $consulta = "SELECT * FROM produtos"; # executa a string SQL $resultado = mysql_query($consulta,$conexao); # armazena o número de campos $NumeroCampos = mysql_num_fields($resultado); # exibe o tipo dos campos for($x=0; $x < $NumeroCampos; $x++) { echo "O tamanho do campo $x é:<b>". mysql_field_len($resultado,$x)."</ } O tamanho do campo 0 é:11 O tamanho do campo 1 é:35 O tamanho do campo 2 é:12 mysql_list_fields 34

int mysql_list_field(string Banco, string Tabela, int Identificador) Retorna informações dos campos de uma tabela no banco de dados como: nome, tipo, tamanho, indicadores de tipo. Para retornar as informações sobre os campos, use as funções mostradas anteriormente mysql_field_name, mysql_field_type, mysql_field_len, mysql_field_flags. O exemplo abaixo retorna o nome, tipo, tamanho e identificador de tipos do campos. # seleciona o banco # seleciona a tabela produtos $consulta = "SELECT * FROM produtos"; # armazena as informações dos campos $resultado = mysql_list_fields("teste","produtos",$conexao); # armazena o número de campos $NumeroCampos = mysql_num_fields($resultado); # exibe o tipo dos campos for($x=0; $x < $NumeroCampos; $x++) { echo "O nome do campo $x é:<b>". mysql_field_name($resultado,$x)."</b> 35

echo "O tipo do campo $x é:<b>". mysql_field_type($resultado,$x)."</b> echo "O tamanho do campo $x é:<b>". mysql_field_len($resultado,$x)."</ echo "O identificador de tipo do campo $x é:<b>". mysql_field_flags($r echo "<hr>"; } O nome do campo 0 é:codigo_produto O tipo do campo 0 é:int O tamanho do campo 0 é:11 O identificador de tipo do campo 0 é:not_null primary_key auto_increment O nome do campo 1 é:produto O tipo do campo 1 é:string O tamanho do campo 1 é:35 O identificador de tipo do campo 1 é:not_null O nome do campo 2 é:preco O tipo do campo 2 é:real O tamanho do campo 2 é:12 O identificador de tipo do campo 2 é:not_null mysql_free_result 36

int mysql_free_result(int Resultado) Esta função libera memória usada na execução de uma string SQL sendo que somente deve ser usada se estiver o script for consumir muita memória. Após a execução de um script toda a memória é liberada de forma automática quando finaliza o script. O exemplo abaixo libera a memória usada pela string SQL # seleciona o banco # seleciona a tabela produtos $consulta = "SELECT * FROM produtos"; # armazena as informações dos campos $resultado = mysql_query($consulta,$conexao); while($campos = mysql_fetch_array($resultado)) { echo "Codigo Produto: <b>". $campos["codigo_produto"]."</b><br>\n"; echo "Produto: <b>". $campos["produto"]."</b><br>\n"; echo "Preco: <b>". $campos["preco"]."</b><br>\n"; } # libera a memória usada pela string SQL da consulta SELECT mysql_free_result($resultado); 37

Codigo Produto: 1 Produto: CD Preco: 4.99 mysql_insert_id int mysql_free_result(int Identificador) Retorna o número ID da última string SQL INSERT em um campo auto numerável (AUTO_INCREMET). 38

O exemplo abaixo insere uma linha de registro na tabela produtos com os dados do produto DVD e preço 9.90 e retorna o último registro na tabela no campo codigo_produto auto numerável com AUTO_INCREMENT. # seleciona o banco # seleciona a tabela produtos $consulta = "INSERT INTO produtos(produto,preco)values('dvd',9.90)"; # executa a string SQL $resultado = mysql_query($consulta,$conexao); echo "O valor do último registro é: <b>". mysql_insert_id($conexao)."</b><br>\n O valor do último registro é: 2 Inserindo dados (INSERT) 39

O exemplo abaixo insere uma linha de registro na tabela produtos como o produto Livro e preço 35,00. # seleciona o banco # seleciona a tabela produtos $consulta = "INSERT INTO produtos(produto,preco)values('livro',35.00)"; # executa a string SQL $resultado = mysql_query($consulta,$conexao); echo "Dados enviados com sucesso!!! </b><br>\n"; Dados enviados com sucesso!!! Atualizando dados (UPDATE) O exemplo abaixo atualiza o preço do campo produto da tabela produtos para 1.99 onde o campo for igual a CD. 40

# seleciona o banco # seleciona a tabela produtos $consulta = "UPDATE produtos set preco=1.99 WHERE produto='cd'"; # executa a string SQL $resultado = mysql_query($consulta,$conexao); echo "Dados atualizados com sucesso!!! </b><br>\n"; Dados atualizados com sucesso!!! Selecionando dados (SELECT) O exemplo abaixo seleciona o campo produto da tabela produtos onde o campo for igual a CD. 41

# seleciona o banco # seleciona a tabela produtos $consulta = "SELECT * FROM produtos WHERE produto='cd'"; # executa a string SQL $resultado = mysql_query($consulta,$conexao); # armazena os campos em uma array $campos = mysql_fetch_object($resultado); # exibe o valor do campo echo "CD: <b>".$campos->produto."</b> Preço: <b>".$campos->preco."</b><br>\n"; CD: CD Preço: 1.99 Excluindo dados (DELETE) O exemplo abaixo exclui o campo produto da tabela produtos onde o campo for igual a CD. # seleciona o banco 42

# seleciona a tabela produtos $consulta = "DELETE FROM produtos WHERE produto='cd'"; # executa a string SQL $resultado = mysql_query($consulta,$conexao); echo "Dados excluidos com sucesso!!!</b><br>\n"; Dados excluidos com sucesso!!! 43