データの削除(DELETE)

広告

データの削除を試してみます。DELETEを使います。DELETEの場合は、pg_query関数の結果として成功した場合に TRUE 、エラー時に FALSE を返します。

サンプルコード

では実際に試してみます。データベース名「uriage」に含まれる「shouhin」テーブルのデータを削除してみます。

<html>
<head><title>PHP TEST</title></head>
<body>

<?php

$conn = "host=localhost dbname=uriage user=pguser password=pguser";
$link = pg_connect($conn);
if (!$link) {
    die('接続失敗です。'.pg_last_error());
}

print('接続に成功しました。<br>');

pg_set_client_encoding("sjis");

$result = pg_query('SELECT id, name FROM shouhin');
if (!$result) {
    die('クエリーが失敗しました。'.pg_last_error());
}

for ($i = 0 ; $i < pg_num_rows($result) ; $i++){
    $rows = pg_fetch_array($result, NULL, PGSQL_ASSOC);
    print('id='.$rows['id']);
    print(',name='.$rows['name'].'<br>');
}

print('<br>データを削除します。<br><br>');

$id = 6;

$sql = sprintf("DELETE FROM shouhin WHERE id = %s", $id);

$result_flag = pg_query($sql);

if (!$result_flag) {
    die('INSERTクエリーが失敗しました。'.pg_last_error());
}

print('<br>追加後のデータを取得します。<br><br>');

$result = pg_query('SELECT id, name FROM shouhin');
if (!$result) {
    die('クエリーが失敗しました。'.pg_last_error());
}

for ($i = 0 ; $i < pg_num_rows($result) ; $i++){
    $rows = pg_fetch_array($result, NULL, PGSQL_ASSOC);
    print('id='.$rows['id']);
    print(',name='.$rows['name'].'<br>');
}

$close_flag = pg_close($link);

if ($close_flag){
    print('切断に成功しました。<br>');
}

?>
</body>
</html>

上記ファイルをWWWサーバに設置しブラウザ経由で見ると下記のように表示されます。

削除

( Written by Tatsuo Ikura )

プロフィール画像

著者 / TATSUO IKURA

これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。