MySQL DELETE ステートメント


MySQL DELETE ステートメント

SQL DELETE FROM コマンドを使用して、MySQL データ テーブル内のレコードを削除できます。

このコマンドは、mysql> コマンド プロンプトまたは PHP スクリプトで実行できます。

構文

次に、MySQL データ テーブルからデータを削除する SQL DELETE ステートメントの一般的な構文を示します。

DELETE FROM table_name [WHERE Clause]
  • WHERE 句が指定されていない場合、MySQL テーブル内のすべてのレコードが削除されます。

  • WHERE句に任意の条件を指定できます

  • 1つのテーブル内のレコードを一度に削除できます。

WHERE 句は、データテーブル内の指定したレコードを削除する場合に非常に便利です。

コマンドラインからデータを削除する

ここでは、SQL DELETE コマンドの WHERE 句を使用して、MySQL データ テーブルでユーザーが選択したデータを削除します。

次の例では、user テーブル内の user_id 3 のレコードを削除します。

mysql> use demo;
Database changed
mysql> DELETE FROM user WHERE user_id=3;
Query OK, 1 row affected (0.23 sec)

PHP スクリプトを使用してデータを削除します

PHP は、mysqli_query() 関数を使用して SQL ステートメントを実行します。コマンド内の WHERE 句の有無にかかわらず、SQL DELETE を使用できます。

この関数は、SQL コマンドを実行する mysql> コマンドと同じ効果があります。

次の PHP の例では、user テーブル内の user_id 3 のレコードを削除します。

<?php
$dbhost = 'localhost' // mysql サーバーのホストアドレス
$dbuser = 'root'; ; / mysql username
$dbpass = 'root'; ' .mysqli_error($conn));
}
//中国語の文字化けを防ぐためのエンコーディングを設定します
mysqli_query($conn, "set names utf8");

$sql = 'ユーザーから削除
WHERE user_id=3';

mysqli_select_db( $conn, 'demo' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
die('データを削除できません: ' . mysqli_error($conn));
}
echo 'データは正常に削除されました。 ';
mysqli_close($conn);

?>

関連ビデオチュートリアルの推奨事項:
MySQL 権威開発ガイド (チュートリアル)