English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Neste tutorial, você aprenderá como usar PHP para atualizar registros em tabelas do MySQL.
UPDATEA sentença é usada para alterar ou modificar registros existentes na tabela do banco de dados. Esta sentença geralmente é usada em conjunto com a cláusula WHERE para aplicar as alterações apenas aos registros que correspondem a uma condição específica.
A sintaxe básica da instrução UPDATE pode ser dada da seguinte forma:}}
UPDATE table_name SET column1=/value, column2=/value2,... WHERE column_name=some_value
Vamos usar uma consulta SQL com a cláusula WHERE e executá-la através da função mysqli_query() do PHP para atualizar um registro na tabela. Considere a tabela persons no banco de dados demonstrativo a seguir:
+----+------------+-----------+----------------------+ | id | first_name | last_name | email | +----+------------+-----------+----------------------+ | 1 | Peter | Parker | [email protected] | | 2 | John | Rambo | [email protected] | | 3 | Clark | Kent | [email protected] | | 4 | John | Carter | [email protected] | | 5 | Harry | Potter | [email protected] | +----+------------+-----------+----------------------+
O código PHP do exemplo a seguir atualizará a tabela persons onde o id for1endereço de e-mail dessa pessoa.
<?php /*Tente conectar ao servidor MySQL. Supondo que você esteja executando MySQL. Servidor com configurações padrão (usuário sem senha 'root') */ $link = mysqli_connect("localhost", "root", "", "demo"); //Verificar conexão if($link === false) { die("Erro: Não foi possível conectar. ". mysqli_connect_error()); } //Tente atualizar a execução da consulta $sql = "UPDATE persons SET email='[email protected]' WHERE id=1"; if(mysqli_query($link, $sql)){ echo "Registro atualizado com sucesso."; } else { echo "Erro: Não foi possível executar $sql ". mysqli_error($link); } //Fechar conexão mysqli_close($link); ?>
<?php /*Tente conectar ao servidor MySQL. Supondo que você esteja executando MySQL. Servidor com configurações padrão (usuário sem senha 'root') */ $mysqli = new mysqli("localhost", "root", "", "demo"); //Verificar conexão if($mysqli === false) { die("Erro: Não foi possível conectar. ". $mysqli-connect_error); } //Tente atualizar a execução da consulta $sql = "UPDATE persons SET email='[email protected]' WHERE id=1"; if($mysqli-query($sql) === true) { echo "Registro atualizado com sucesso."; } else{}} echo "Erro: Não foi possível executar $sql. ". $mysqli->error; } //Fechar conexão $mysqli->close(); ?>
<?php /*Tente conectar ao servidor MySQL. Supondo que você esteja executando MySQL. Servidor com configurações padrão (usuário sem senha 'root') */ try{ $pdo = new PDO("mysql:host=localhost;dbname=demo", "root", ""); //Definir o modo de erro PDO como exceção $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch(PDOException $e){ die("Erro: Não foi possível conectar. ". $e->getMessage()); } //Tente atualizar a execução da consulta try{ $sql = "UPDATE persons SET email='[email protected]' WHERE id=1"; $pdo->exec($sql); echo "Registro atualizado com sucesso."; } catch(PDOException $e){ die("Erro: Não foi possível executar $sql. ". $e->getMessage()); } //Fechar conexão unset($pdo); ?>
Após a atualização, a tabela persons será assim:
+----+------------+-----------+--------------------------+ | id | first_name | last_name | email | +----+------------+-----------+--------------------------+ | 1 | Peter | Parker | [email protected] | | 2 | John | Rambo | [email protected] | | 3 | Clark | Kent | [email protected] | | 4 | John | Carter | [email protected] | | 5 | Harry | Potter | [email protected] | +----+------------+-----------+--------------------------+
Aviso:A cláusula WHERE da instrução UPDATE especifica quais registros devem ser atualizados. Se a cláusula WHERE for omitida, todos os registros serão atualizados.