データの更新(UPDATE)
テーブル内の1つのレコードを更新する場合は、以下のように記述します。
require_once('config.php');
try{
//データベースに接続
$db = new PDO('mysql:host='.$host.';dbname='.$dbname.';charset=utf8mb4', $username, $password);
//実行したいSQL
$sql = 'UPDATE blog SET usr = :user, tweet = :tweet WHERE id = :id';
//SQL準備
$sth = $db->prepare($sql);
//更新したいデータ
$id = 2;
$user = "佐藤健太";
$tweet = "久しぶり!お元気ですか?";
//ユーザからの入力情報をSQL文に代入
$sth->bindParam(':id', $id, PDO::PARAM_INT);
$sth->bindParam(':user', $user, PDO::PARAM_STR);
$sth->bindParam(':tweet', $tweet, PDO::PARAM_STR);
//実行
$sth->execute();
print "データを更新しました。";
//更新後のデータを呼び出す
$sql = 'SELECT * FROM blog';
$sth = $db->prepare($sql);
$sth->execute();
}catch(PDOException $e){
die('エラーメッセージ:'.$e->getMessage());
}finally{
//データベース接続切断
$db = null;
}
print "<br>データ更新後の一覧<br>";
while ($row = $sth->fetch()){
print($row['id'])."<br>";
print($row['usr'])."<br>";
print($row['tweet'])."<br>";
print($row['time'])."<br>";
print "<br>";
}
コピーできました!