SQL 4章 データの入力・変更・削除
- 4.1. データの入力 <INSERT INTO>
- 4.2. データの変更 <UPDATE>
- 4.3. データの削除 <DELETE>
4.2. データの変更 <UPDATE>
SQL では登録データの変更を複数の条件を与えて一括で変更することも、1つの行や列を指定して、その部分のみを変更することも可能です。データの変更には UPDATE 文を使用します。基本的な構文は次の通りです。
UPDATE テーブル名 SET 列名 = データ, 列名 = データ ,.... ;
変更するデータは、列のデータ型に従うものでなければなりません。また、列制約やテーブル制約で入力できるデータが制限されている場合は、それ以外のデータに変更できません。他のテーブルから参照されている値を含むものも変更できません。
商品表で単価を一律 1,000 円にしたい場合は、sample.09-1 のように書きます。
商品コード | 商品名 | 単価 |
/* データの変更 */ UPDATE 商品表 SET 単価 = 1000 ;
特定の行のみを変更したい場合は、WHERE 句で条件を指定しなければなりません。次の例は、商品表において商品コードが 0004 の単価を 2500 に変更するときの SQL です。
商品コード | 商品名 | 単価 |
/* データの変更 */ UPDATE 商品表 SET 単価 = 2500 WHERE 商品コード = '0004' ;
複数の列を一度に変更するには、sample.09-3 のように書きます。商品表で、商品コードが 0005 の商品名をブックエンド、単価を 1000 に変更します。
商品コード | 商品名 | 単価 |
/* データの変更 */ UPDATE 商品表 SET 商品名 = 'ブックエンド' , 単価 = 1000 WHERE 商品コード = '0005' ;
UPDATE 文の SET 句には、変更する列を使った式を含め、値式を使用することができます。商品表の単価を一律 50 円アップしたいときは次のように記述します。
商品コード | 商品名 | 単価 |
/* データの変更 */ UPDATE 商品表 SET 単価 = 単価 + 50 ;
(実習課題2)
4章 1節の実習課題で入力したデータの office を、10 から 20 に変更するときの SQL 文を記述しなさい。
関連記事
- [SQL] 4. データの入力・変更・削除 1 : テーブルにデータを入力するSQLを説明します
- [SQL] 4. データの入力・変更・削除 3 : テーブルのデータを削除するSQLを説明します
- [SQL] 5. データの参照 2 : 不等式で条件を付けてデータを操作するSQLについて説明します