MySQLi - Requête DELETE

Si vous souhaitez supprimer un enregistrement de n'importe quelle table MySQLi, vous pouvez utiliser la commande SQL DELETE FROM. Vous pouvez utiliser cette commande à l'invite mysql> ainsi que dans n'importe quel script comme PHP.

Syntaxe

Voici la syntaxe SQL générique de la commande DELETE pour supprimer des données d'une table MySQLi -

DELETE FROM table_name [WHERE Clause]
  • Si la clause WHERE n'est pas spécifiée, tous les enregistrements seront supprimés de la table MySQLi donnée.

  • Vous pouvez spécifier n'importe quelle condition à l'aide de la clause WHERE.

  • Vous pouvez supprimer des enregistrements dans une seule table à la fois.

La clause WHERE est très utile lorsque vous souhaitez supprimer les lignes sélectionnées dans une table.

Suppression de données de l'invite de commande

Cela utilisera la commande SQL DELETE avec la clause WHERE pour supprimer les données sélectionnées dans la table MySQLi tutorials_inf.

Exemple

L'exemple suivant supprimera un enregistrement dans tutorial_inf dont le nom est johar.

[email protected]# mysql -u root -p password;
Enter password:*******

mysql> use TUTORIALS;
Database changed

mysql> DELETE FROM tutorials_inf where name = 'johar';
Query OK, 1 row affected (0.23 sec)

mysql>

Suppression de données à l'aide d'un script PHP

Vous pouvez utiliser la commande SQL DELETE avec ou sans WHERE CLAUSE dans la fonction PHP mysqli_query(). Cette fonction exécutera la commande SQL de la même manière qu'elle est exécutée à l'invite mysql>.

Exemple

Essayez l'exemple suivant pour supprimer un enregistrement de tutorial_inf dont le nom est althamas.

<?php
   $dbhost = 'localhost:3306';
   $dbuser = 'root';
   $dbpass = '';
   $dbname = 'TUTORIALS';
   $conn = mysqli_connect($dbhost, $dbuser, $dbpass,$dbname);
   
   if(! $conn ) {
      die('Could not connect: ' . mysqli_error());
   }
   echo 'Connected successfully<br>';
   $sql = ' DELETE FROM tutorials_inf WHERE name = "althamas"';
   
   if (mysqli_query($conn, $sql)) {
      echo "Record deleted successfully";
   } else {
      echo "Error deleting record: " . mysqli_error($conn);
   }
   mysqli_close($conn);
?>

La sortie de l'échantillon devrait être comme ceci-

Connected successfully
Record deleted successfully