【試して覚える】SQLite で Update 文入門

プログラミング入門
この記事は約3分で読めます。

insert 、delete と続いた後は、 update文の解説です。

delete文は指定した条件で削除するものですが、update文は指定した条件のデータを更新するという役目を持っています。

削除と更新という違いはありますが、使い方や注意点は delete と同じです。

SQLを試す場合は、 こちら でツールを公開していますので、ダウンロードをお願いします。

update文の書式

updateの書式は次の様になります。

update テーブル名 set カラム1=値1,カラム2=値2,・・・ where 条件式

カラムごとに値が設定できるので、カラムと代入したい値のペアを、カンマで区切るような記述になります。

最後に絞り込み条件を指定するため where 区を付加するところは delete 文と同じです。

where 区の指定を忘れると、全てのレコードが変更されてしまうのでご注意ください。

update を試してみる

では、商品マスタのメーカー名を “SONY” から “ソニー” に変えることを考えてみます。

ここで抽出条件を間違うと、意図しないレコードが変更されてしまうので、delete と同じく select 文で動作を確認します。

結果は次の様になります。

では、さっそく update してみましょう。

実行した結果、一覧部分が空白になりました。

delete と同様、update を実行しても何も返ってこないので、空白になります。

では、確認の為に再び select してみましょう。

メーカーが ‘SONY’ というレコードは存在しないので、0件として表示されます。

すべてのレコードを変更しているとまずいので、delete と同様に確認します。

メーカー名が ’ソニー’ になっているレコードと、それ以外(富士フィルム、CANON、カシオ)が表示されているので、update に指定した条件は正しかったようです。

別の確認方法として、where 区で抽出条件を確認する際にヒットした件数をメモっておき、update を行った後で、変更後の値で検索するという方法もあります。

例えば今回の場合なら、次のような select を実行します。

結果は以下の様になりますので、最初に調べておいた件数(22件)と一致していれば、指定したレコードのみ意図した通りに更新されていることが確認できます。

まとめ

今回は update によるデータの更新を解説しました。

update もdelete と同様、以下の点に注意が必要です。

  • where 区で削除対象の絞り込み条件を指定する。
  • where 区を指定しないと、全件が削除される。
  • select で絞り込み条件を確認してから,update文に置き換えて実行すると安心

という3点だけ押さえてけばOKです。

本サイトで公開しているツールを使えば、更新しては元に戻すということを簡単に繰り返せますので、色々と実験してみて下さい。

タイトルとURLをコピーしました