Symfoware Server SQLビギナーズガイド - FUJITSU - |
目次 索引 |
第3章 データを変更する方法 | > 3.2 データベースのデータを更新する |
表のデータをNULL値に更新するには、設定句に指定する値の代わりにキーワードの“NULL”を指定するか、標識変数を使用します。NULL値に更新する例を以下に示します。
例1
キーワードの“NULL”を指定する例です。発注表の取引先が“61”で、かつ取引製品が“215”のデータについて、仕入価格を“216000”に、発注数量をNULL値に更新します。
UPDATE 在庫管理.発注表 SET 仕入価格 = 216000, 発注数量 = NULL WHERE 取引先 = 61 AND 取引製品 = 215
例2
標識変数を使用する例です。更新するデータは例1と同じとします。
UPDATE 在庫管理.発注表 SET 仕入価格 = 216000, 発注数量 = :ORDERQTY INDICATOR :ORDERQTY_INDICATOR WHERE 取引先 = 61 AND 取引製品 = 215例2では、UPDATE文を実行する前に、標識変数である“ORDERQTY_INDICATOR”に“-1”を設定しておきます。ホスト変数“ORDERQTY”には値を設定する必要はありません。このとき、更新されるデータはNULL値になります。なお、標識変数に“0”または正の値を設定しておくと、更新されるデータはホスト変数“ORDERQTY”に設定されている値となります。
したがって、更新するデータがアプリケーションの処理によってNULL値になったりそれ以外の値となるような処理では、標識変数を使用すればUPDATE文の記述は1つで済みます。一方、データを必ずNULL値とする処理では、キーワードの“NULL”を指定すればUPDATE文の記述が簡単になります。
例1および例2のUPDATE文の実行結果を以下に示します。
目次 索引 |