MariaDB-クエリの削除

DELETEコマンドは、指定されたテーブルからテーブル行を削除し、削除された数量を返します。ROW_COUNT()関数を使用して削除された数量にアクセスします。WHERE句は行を指定し、それがない場合はすべての行が削除されます。LIMIT句は、削除される行の数を制御します。

複数の行のDELETEステートメントでは、条件を満たす行のみを削除します。LIMIT句とWHERE句は許可されていません。DELETEステートメントでは、異なるデータベースのテーブルから行を削除できますが、テーブルから削除してから、サブクエリ内の同じテーブルから選択することはできません。

次のDELETE構文を確認してください-

DELETE FROM table_name [WHERE …]

コマンドプロンプトから、またはPHPスクリプトを使用して、DELETEコマンドを実行します。

コマンドプロンプト

コマンドプロンプトで、標準コマンドを使用するだけです-

root@host# mysql –u root –p password;
Enter password:*******
mysql> use PRODUCTS;
Database changed
mysql> DELETE FROM products_tbl WHERE product_id=133;
mysql> SELECT * from products_tbl WHERE ID_number='133';
ERROR 1032 (HY000): Can't find record in 'products_tbl'

PHP削除クエリスクリプト

使用 mysql_query() DELETEコマンドステートメントの関数-

<?php
   $dbhost = 'localhost:3036';
   $dbuser = 'root';
   $dbpass = 'rootpassword';
   $conn = mysql_connect($dbhost, $dbuser, $dbpass);
   
   if(! $conn ) {
      die('Could not connect: ' . mysql_error());
   }

   $sql = 'DELETE FROM products_tbl WHERE product_id = 261';
   mysql_select_db('PRODUCTS');
   $retval = mysql_query( $sql, $conn );

   if(! $retval ) {
      die('Could not delete data: ' . mysql_error());
   }

   echo "Deleted data successfully\n";
   mysql_close($conn);
?>

データの削除が成功すると、次の出力が表示されます-

mysql> Deleted data successfully
mysql> SELECT * from products_tbl WHERE ID_number='261';
ERROR 1032 (HY000): Can't find record in 'products_tbl'