SQLServerのUpdate文の書き方をわかりやすく解説

当サイトではアフィリエイト広告を利用しています。

SQLServer

Update文とは,テーブルの中の値を更新する時に使う書き方です。
データは作成されて,参照されて,更新されて,削除されるというのがライフサイクルですから,その内の更新処理に当たるのがupdate文です。
絶対的に現場で使いますのでやっていきましょう。

[chat face=”496313.png” name=”アンダーソン” align=”left” border=”yellow” bg=”yellow” style=”maru”]Productsテーブルの状態がこんな感じのときに [/chat]

[chat face=”496313.png” name=”アンダーソン” align=”left” border=”yellow” bg=”yellow” style=”maru”] テレビのPriceを55000円に変更したい場合は
こんな感じで書きます[/chat]
update Products
set Price = 55000
where ProductId = 11
[chat face=”496313.png” name=”アンダーソン” align=”left” border=”yellow” bg=”yellow” style=”maru”]するとテレビのPriceが変更されました。 [/chat]

[chat face=”496313.png” name=”アンダーソン” align=”left” border=”yellow” bg=”yellow” style=”maru”] 複数の項目を更新する場合は,項目名ごとにカンマで区切ります[/chat]
update Products
set ProductName = 'プラズマテレビ',
    Price = 56000
where ProductId = 11
[chat face=”496313.png” name=”アンダーソン” align=”left” border=”yellow” bg=”yellow” style=”maru”]これを実行すると「テレビ」が「プラズマテレビ」になり,Priceも「56000」に変更されます。 [/chat]

もちろんwhere条件も複数項目をandやorでつないで指定できますよ。
whereの使い方はselect文のところで解説しています。

更新処理で大事なのは,テーブルのプライマリキーが何かを考えて実行しましょう。
1行に対して更新をかける場合はプライマリキーがすべて指定されていないと,意図していない行が更新されてしまいます。

今回の例ではProductIdがプライマリキーなので,ProductIdを一つwhere条件に入れるだけで,確実に1行以下の件数更新になりますが,複数で作成されるプライマリキーのときは,キーがすべて指定されているか?を確認する必要があります。

もちろんキーを指定しない更新も可能です。
Priceが3000以下のレコードをすべて更新などといった場合はもちろんキーを当てる必要がありませんから,そのあたりを確認してプログラミングしましょう。

          Page   <<   1   2   3   4   5   6   >>

SQLやデータベースについてもっと学びたい方は次の記事でおすすめの書籍を紹介しています↓

SQLServerやデータベースに関する書籍のおすすめランキング!
SQLをこれからはじめようと思っている人や,普段SQLを使った仕事をしているけどもっと詳しくなりたい!という方向けに,どんな本を読めばいいのかというおすすめの書籍を紹介します。 SQL&データベース関連おすすめ書籍【文法編】 SQLの書き方...

トップページへ戻る