データの更新(UPDATE)

広告

データの更新を行います。UPDATEを使います。UPDATEの場合は「sqlite_exec」関数を使います。

では実際に試してみましょう。

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

<?php

$link = sqlite_open('test.db', 0666, $sqliteerror);
if (!$link) {
    die('接続失敗です。'.$sqliteerror);
}

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


$sql = "SELECT id, name FROM shouhin";
$result = sqlite_query($link, $sql, SQLITE_BOTH, $sqliteerror);
if (!$result) {
    die('クエリーが失敗しました。'.$sqliteerror);
}

for ($i = 0 ; $i < sqlite_num_rows($result) ; $i++){
    $rows = sqlite_fetch_array($result, SQLITE_ASSOC);
    print('id='.$rows['id']);
    print(',name='.$rows['name'].'<br>');
}


$id = 2;
$name = 'デジタルカメラ';
$sql = sprintf("UPDATE shouhin SET name = '%s' WHERE id = %s"
         , sqlite_escape_string($name), $id);
$result_flag = sqlite_exec($link, $sql, $sqliteerror);

if (!$result_flag) {
    die('クエリーが失敗しました。'.$sqliteerror);
}else{
    print(sqlite_changes($link).'件のレコードを更新しました。<br>');
}


$sql = "SELECT id, name FROM shouhin";
$result = sqlite_query($link, $sql, SQLITE_BOTH, $sqliteerror);
if (!$result) {
    die('クエリーが失敗しました。'.$sqliteerror);
}

for ($i = 0 ; $i < sqlite_num_rows($result) ; $i++){
    $rows = sqlite_fetch_array($result, SQLITE_ASSOC);
    print('id='.$rows['id']);
    print(',name='.$rows['name'].'<br>');
}

sqlite_close($link);

print('切断しました。<br>');

?>
</body>
</html>

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

データの更新

( Written by Tatsuo Ikura )

プロフィール画像

著者 / TATSUO IKURA

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