SQLのUPDATE文は、表に存在する行を更新する。更新対象が複数ある場合は、それらのすべてを更新する。更新対象が無い場合は、何も更新せず、エラーにもならない。UPDATE文はDMLの一種であり、コミットすることで更新が確定される。更新対象がロックされている場合は、ロックが解除されるまで待つ。

目次

UPDATEの構文

自分のスキーマ内にある表のすべての行を更新する。

UPDATE table SET column = value [,column = value...]

他のスキーマ内にある表のすべての行を更新する。

UPDATE schema.table SET column = value [,column = value...]

自分のスキーマ内にある表のうち、条件に合致する行を更新する。

UPDATE table SET column = value [,column = value...] WHERE condition
schema
行を更新するテーブルが存在するスキーマを指定する。
table

行を更新するテーブルを指定する。

column

更新する列を指定する。

value

列の値を指定する。

NULLを指定すると、NULLになる。

condition

更新する行の条件を指定する。条件の指定を省略した場合は、すべての行を更新する。条件に当てはまる行が無かった場合は、何も更新されず、エラーにもならない。

UPDATEに必要な権限

自分のスキーマ内にある表の行を更新するには、とくに権限は必要ない。

削除する表が自分のスキーマ内にない場合は、更新する表に対するUPDATEオブジェクト権限が必要である。

UPDATEの使用例

SQL> update 従業員表 set 氏名 = '山田太郎' where 従業員番号 = '0001';

1行が更新されました。

SQL>

関連SQL

スポンサーリンク