PHPでデータベースのデータを削除(DELETE)する方法

投稿日: 作成:   更新:

PHPからMySQLにPDOを使って、DBのデータを削除(DELETE)する方法です。

PDOの使い方について詳しく知りたい方は次の記事をご覧ください。

PHPからMySQLに接続する方法

DELETE文の書き方

データを削除するには「DELETE文」を使用します。

DELETE FROM テーブル名 WHERE 条件;

今回は次のDELETE文をPHPで実行していきます。

DELETE FROM WHERE id = 3;

PHPでデータ削除する書き方

MySQLのtestdbデータベースに対して、先ほどのDELETE文を実行していきます。

SQLインジェクション対策として、値セットは「$stmt->bindValue」を使用しています。

<?php

try {
    // DB接続
    $pdo = new PDO(
        // ホスト名、データベース名
        'mysql:host=localhost;dbname=testdb;',
        // ユーザー名
        'root',
        // パスワード
        '',
        // レコード列名をキーとして取得させる
        [PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC]
    );

    // SQL文をセット
    $stmt = $pdo->prepare('DELETE FROM users WHERE id = :id');

    // 値をセット
    $stmt->bindValue(':id', 3);

    // SQL実行
    $stmt->execute();

} catch (PDOException $e) {
    // エラー発生
    echo $e->getMessage();
    
} finally {
    // DB接続を閉じる
    $pdo = null;
}

?>

以上です。