INSERT、UPDATE、および DELETE オプション

次のクエリ エンジンのヒントは、INSERT、UPDATE、および DELETE で使用できます。これらのオプションは、INSERT、UPDATE、および DELETE キーワードの直後に指定されます。

INSERT、UPDATE、DELETE オプション

説明

構文

大文字と小文字を区別

CASE_SENSITIVE は、文字列比較で大文字と小文字を区別するよう強制します。このオプションは、TDV Server の大文字と小文字の区別の構成設定 ([TDV Server ] > [SQL エンジン] > [SQL 言語] の下) を上書きします。

CASE_SENSITIVE が FALSE に設定されているか、指定されていない場合、TDV Server の大文字と小文字の区別の構成設定により、文字列の比較の評価方法が決まります。

CASE_SENSITIVE[={"TRUE"|"FALSE"}]

UPDATE {OPTION CASE_SENSITIVE="TRUE"} table1
	SET column1 = ’BAR’

WHERE column1 = ’FOO’

CHECK_VIEW_CONSTRAINTS

CHECK_VIEW_CONSTRAINTS により、TDV Server はビュー定義のデータ整合性を保持します。つまり、ビューの変更を防ぎます。

CHECK_VIEW_CONSTRAINTS が指定されていない場合、TDV Server はビュー定義のデータ整合性を保持しません。

ビュー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 Server の [末尾のスペースを無視する] 構成設定を上書きします ([TDV Server ] > [SQL エンジン] > [SQL 言語] 構下)。

IGNORE_TRAILING_SPACES が FALSE に設定されているか、指定されていない場合、TDV Server の [末尾のスペースを無視する] 構成設定によって、文字列の比較の評価方法が決まります。

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