【SQL基礎】データベースの値を変更するupdateコマンド

SQLでデータベースの値を変更したい場合、SQL4大命令文の一つ「update」コマンドを使用します。

一つのサービスでデータを変更する事は、頻繁にあると思います。

きちんとupdateコマンドを把握して、良いサービスを作成しましょう。

この記事で理解出来る事
  • SQL4大命令文のひとつ、「update」コマンドの基本を理解できる
  • データベースの値を変更するやり方を理解できる
目次

データベースの値を変更するupdateコマンド

スクリプト

updateコマンドの基本構文を理解する

updateコマンドの基本構文は下記になります。

update テーブル名 set カラム名1 = 値,カラム名2 = 値2 where カラム 比較演算子 値;

fromの後にテーブル名を記入しております。

setの後に変更したいカラムと変更したい値を入力しております。

複数ある場合は「,」で区切ります。

whereの後に条件を指定しております。条件のカラムと値はテーブルの値を参照します。比較演算子は使用可能なものから選択しております。

テーブルを参照する

今回下記のテーブルを作成したとします。カラムと値は下記から参照できます。

テーブル名:users

id name score
1user_147
2user_224
3user_333
usersテーブル

今回はusersテーブルに、3人のユーザーが登録しているデータベースを使用します。

使用可能な比較演算子を抑えておく

比較演算子は下記から選択できます。

比較演算子条件
=等しい
<より小さい
>より大きい
<=以下
>=以上
!=等しくない
<>等しくない

updateコマンドで具体的なテーブルの値を変更する

では「usersテーブル」のnameが「user_3」のscoreの値を「33」から「66」に変更して見ましょう。

基本構文を参照して作成して見ると、下記になりました。

update from users set score = 66 where name = 'user_3';

実行してデータベースの値を変更してみましょう。

エラーが出ました(´;ω;`)

文法エラー(Syntax error)対処法

Syntax error・・・つまり文法間違いですね。

文法エラーが出た場合は「near」の文字を探しましょう。

「near」とは「近く」という意味です。

ありました。今回は「near ‘from users set score・・・’」となっています。

大抵の場合、nearの次の文字がおかしい事が多いです。ここでは「from・・・」ですね。ここを重点に見直します。

文法を見直したら「from」が不要ですね。SQL4大命令の「select」と「delete」構文はテーブルを指定する前に「from」といれますので、ここでも入れてしまいました。

updateコマンドでは「from」は不要でした。下記のコードに修正して実行します。

update from users set score=66 where name='user_3';

user_3のscoreの値が33から66に変更していました。

SQLでupdateコマンドで、データベースの値を変更する事が出来ました。

SQLのupdateメソッドの補足情報

updateメソッドでカラムを全て初期化する方法は、以下の記事をご覧ください。

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
目次
閉じる