リファレンスガイド> TDVクエリエンジンオプション> INSERT、UPDATE、DELETEオプション
 
INSERT、UPDATE、DELETEオプション
次のクエリエンジンのヒントは、INSERT、UPDATE、およびDELETEで使用できます。これらのオプションは、INSERT、UPDATE、およびDELETEキーワードの直後に指定されます。
INSERT、UPDATE、DELETEオプション
説明
構文
大文字と小文字を区別
CASE_SENSITIVEは、文字列の比較で大文字と小文字を区別するように強制します。このオプションは、TDVサーバーの大文字と小文字の区別の構成設定を上書きします([TDVサーバー] > [SQLエンジン] > [SQL言語]の下)。
CASE_SENSITIVEがFALSEに設定されているか、指定されていない場合、TDVサーバーの大文字と小文字の区別の構成設定により、文字列の比較の評価方法が決まります。
CASE_SENSITIVE[={"TRUE"|"FALSE"}]
UPDATE {OPTION CASE_SENSITIVE="TRUE"} table1
SET column1 = ’BAR’
WHERE column1 = ’FOO’
CHECK_VIEW_CONSTRAINTS
CHECK_VIEW_CONSTRAINTSにより、TDVサーバーはビュー定義のデータ整合性を保持します。つまり、ビューの変更を防ぎます。
CHECK_VIEW_CONSTRAINTSが指定されていない場合、TDVサーバーはビュー定義のデータ整合性を保持しません。
ビューV1が次のように定義されているとします。
SELECT column1 FROM table1 WHERE column1 = 5
また、誰かが次の更新ステートメントを使用してV1を更新しようとしたとします。
UPDATE V1
SET column1 = 5
WHERE column1 = 6
CHECK_VIEW_CONSTRAINTSが指定された場合、値column1=6の行がビューV1の定義の範囲外であるため、UPDATEステートメントは失敗します。
CHECK_VIEW_CONSTRAINTS
 
UPDATE {OPTION CHECK_VIEW_CONSTRAINTS} table1
SET column1 = ’BAR ’
WHERE column1 = ’FOO ’
IGNORE_TRAILING_SPACES
IGNORE_TRAILING_SPACESを使用すると、比較で末尾のスペースが無視されます。このオプションは、TDVサーバーの[末尾のスペースを無視する]構成設定を上書きします([TDVサーバー] > [SQLエンジン] > [SQL言語]の下)。
IGNORE_TRAILING_SPACESがFALSEに設定されているか、指定されていない場合、TDVサーバーの[末尾のスペースを無視する]構成設定によって、文字列の比較の評価方法が決まります。
IGNORE_TRAILING_SPACES[={"TRUE"|"FALSE"}]
UPDATE {OPTION IGNORE_TRAILING_SPACES="FALSE"} table1
SET column1 = ’BAR ’
WHERE column1 = ’FOO ’
STRICT
STRICTは、ソースが厳密なSQL 92の動作に準拠していない場合に、クエリエンジンがSQLの側面(数学関数や文字列関数、Oracle POSITION関数など)を基になるデータソースにプッシュするのを防ぎます。これはパフォーマンスに影響を与える可能性があります。 STRICTが指定されていない場合、クエリエンジンはSQL 92ルールを緩和して、より多くのプッシュを実現します。
strict
UPDATE {OPTION STRICT} table1
SET column2 = ’S’
WHERE SIN(column1)= 1