Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SAP Sybase SQL Anywhere 16.0 » SQL Anywhere サーバ SQL の使用法 » テーブル、ビュー、インデックス » 計算カラム

 

計算カラムへの挿入と更新

計算カラムへの挿入や更新における考慮事項は次のとおりです。

  • 直接挿入と直接更新   INSERT または UPDATE 文では計算カラムの値を指定できますが、値は無視されます。サーバは COMPUTE の指定に基づいて計算カラムの値を計算し、その計算カラム値を INSERT または UPDATE 文の指定された値の場所に使用します。

  • カラムの依存性   たとえば、NULL 値を NULL 値以外の値に変更するなど、計算カラムの定義で参照されるカラムの値を設定するときにトリガを使用しないことを強くおすすめします。これは、計算カラムの値が意図した計算内容を反映していない可能性があるためです。

  • カラム名をリストする   計算カラムのあるテーブルに対する INSERT 文では、常にカラム名を明示的に指定してください。

  • トリガ   計算カラムにトリガを定義すると、そのカラムに影響するすべての INSERT 文または UPDATE 文はトリガを起動します。

LOAD TABLE 文では、計算カラムのオプション計算が可能です。ロード操作中に計算を行わないようにすると、複雑なアンロード/再ロード手順を速くすることができます。これは、COMPUTE 式が CURRENT TIMESTAMP などの非確定値を参照する場合でも、計算カラムの値が一定である必要がある場合に便利です。

値を変更すると計算カラムの値がカラム定義と一致しなくなる場合があるため、トリガの従属カラムの値は変更しないでください。

計算カラム x が NOT NULL と宣言されたカラム y に依存する場合、y に NULL を設定しようとすると、トリガが起動される前にエラーが発生し、拒否されます。