PHP MySQL Excluir

Neste artigo, você aprenderá como usar Php Mysql Delete para excluir registros de um banco de dados MySQL usando extensões PHP MySQLi e PDO. Começaremos discutindo os fundamentos da exclusão de dados no MySQL e, em seguida, explicaremos como usar MySQLi e PDO para exclusão.

Além disso, abordaremos tópicos como parâmetros de vinculação e tratamento de erros, garantindo que você tenha uma compreensão abrangente do processo.

A operação delete no MySQL é usada para remover uma ou mais linhas de uma tabela. No PHP, você pode usar as extensões MySQLi ou PDO para executar a operação de exclusão em um banco de dados MySQL.

Vamos ver como fazer isso usando ambas as extensões.



PHP MySQL Excluir dados da tabela com MySQLi e PDO.

Você pode excluir registros de uma tabela usando a instrução DELETE da seguinte maneira:

DELETE FROM table_name
WHERE some_column = some_value

Há uma cláusula WHERE que especifica qual registro ou registros devem ser excluídos.

Todos os registros serão excluídos se você não incluir a cláusula WHERE em seu comando!

Na tabela “ Usuários ” podemos ver os seguintes dados:

eu ia primeiro nome sobrenome e-mail idade gênero reg_date
1 Matt LeBlance [email protected] 55 Macho 2023-03-08 20:09:15
2 Mateus Perada [email protected] 53 Macho 2023-03-08 20:09:15
3 Jennifer Anniston [email protected] 54 Fêmea 2023-03-08 20:09:15

Seguem alguns exemplos de como deletar um registro com id=2 na tabela “ Usuários ” utilizando o seguinte código:

Example (MySQLi Object-oriented): 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php
$servername = "localhost";
$username = "my_user";
$password = "my_pass";
$dbname = "mrx_test_db";
// Creating connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Checking connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
// query to delete a record
$sql = "DELETE FROM Users WHERE id=2";
if ($conn->query($sql) === TRUE) {
echo "Data deleted successfully";
} else {
echo "Error deleting data: " . $conn->error;
}
$conn->close();
?>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Como exemplo, o seguinte é uma maneira processual do MySQLi de exibir as mesmas informações mostradas acima:

Example (MySQLi Procedural): 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php
$servername = "localhost";
$username = "my_user";
$password = "my_pass";
$dbname = "mrx_test_db";
// Creating connection
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Checking connection
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
// query to delete a record
$sql = "DELETE FROM Users WHERE id=2";
if (mysqli_query($conn, $sql)) {
echo "Data deleted successfully";
} else {
echo "Error deleting data: " . mysqli_error($conn);
}
mysqli_close($conn);
?>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Abaixo está um exemplo usando o método MySQL PDO(PHP Data Objects):

Example (PDO): 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php
$servername = "localhost";
$username = "my_user";
$password = "my_pass";
$dbname = "mrx_test_db";
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
// Specify the exception error mode in the PDO
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// query to delete a record
$sql = "DELETE FROM Users WHERE id=2";
// Due to the fact that no results are returned, use exec() instead
$conn->exec($sql);
echo "Data deleted successfully";
}
catch (PDOException $e) {
echo $sql . " " . $e->getMessage();
}
$conn = null;
?>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Exemplo de Explicação

Neste exemplo de PHP, definimos o nome do servidor, nome de usuário, senha e nome do banco de dados que usaremos para estabelecer uma conexão com o banco de dados MySQL.

  • Em seguida, usamos um bloco try-and-catch para lidar com quaisquer exceções que possam ocorrer durante a execução do código.
  • Dentro do bloco try, estabelecemos uma conexão PDO com o banco de dados MySQL e definimos o atributo PDO::ATTR_ERRMODE como PDO::ERRMODE_EXCEPTION , indicando que exceções serão lançadas para erros.
  • Definimos a instrução SQL para deletar um registro da tabela “Usuários” onde o “ id ” é 2, e armazená-lo na variável $sql.
  • Como nenhum resultado é retornado pela consulta de exclusão, usamos o método exec() do objeto PDO para executar a instrução SQL.
  • Se a execução da instrução SQL for bem-sucedida, enviaremos uma mensagem “Dados excluídos com sucesso” para a página HTML.
  • Se uma exceção for capturada, exibimos uma mensagem de erro que inclui a instrução SQL e a mensagem de erro gerada pela exceção.
  • Por fim, fechamos a conexão com o banco de dados definindo a variável $conn como nula.

A tabela ficará assim após a exclusão do registro:

eu ia primeiro nome sobrenome e-mail idade gênero reg_date
1 Matt LeBlance [email protected] 55 Macho 2023-03-08 20:09:15
3 Jennifer Anniston [email protected] 54 Fêmea 2023-03-08 20:09:15
Nós valorizamos o seu feedback.
+1
0
+1
0
+1
0
+1
0
+1
0
+1
0
+1
0

Assine a nossa newsletter
Digite seu e-mail para receber um resumo semanal de nossos melhores posts. Saber mais!
ícone