TimesTenのみのSQLおよび組込みプロシージャ
Oracle DatabaseではサポートされていないTimesTenのSQL文、SQL関数および組込みプロシージャがあります。
PassThrough= 3を設定すると、次の文はOracle Databaseに渡されて処理され、エラーが発生します。
-
すべてのTimesTenキャッシュ・グループのDDLおよびDML文(
CREATE CACHE GROUP、DROP CACHE GROUP、ALTER CACHE GROUP、LOAD CACHE GROUP、UNLOAD CACHE GROUP、REFRESH CACHE GROUPおよびFLUSH CACHE GROUPを含む)。 -
すべてのTimesTenレプリケーション管理DDL文(
CREATE REPLICATION、DROP REPLICATION、ALTER REPLICATION、CREATE ACTIVE STANDBY PAIR、ALTER ACTIVE STANDBY PAIRおよびDROP ACTIVE STANDBY PAIRを含む)。 -
FIRSTn句。 -
ROWSmTOn句。 -
すべてのTimesTen組込みプロシージャ。『Oracle TimesTen In-Memory Databaseリファレンス』の「組込みプロシージャ」を参照してください。
-
文字およびUnicode文字列に関するTimesTen固有の構文は、
PassThrough=3を使用している場合、常にOracle Database構文に変換されるわけではありません。ノート:
TimesTenでのUnicode文字列のサポートの詳細は、『Oracle TimesTen In-Memory Databaseリファレンス』の「文字とUnicode文字列」を参照してください。
-
\046を指定すると、TimesTenでは&記号に変換されますが、Oracle Databaseにパススルーされる際にはこの記号に変換されません。\xyz表記法は、Oracle Databaseでサポートされていません。Oracle Databaseに文字を送信するには、その文字の10進値を使用してCHR()関数内で引数として渡します。 -
TimesTenでは、
\uxyzw構文(\ufe4aのように、xyzwにUnicode値を代入)を使用して、文字列内でUnicode値(4桁の16進数)を表すことができます(NCHARおよびNVARCHAR2の場合のみ)。\uxyzw表記法は、Oracle Databaseでサポートされていません。したがって、Oracle DatabaseにパススルーされるNCHAR列またはNVARCHAR2のUnicode文字列は、u文字を使用せずに、UNISTR()関数内の引数として渡す必要があります。次の例では、Unicode値
'0063'および'0064'(それぞれ文字aおよびb)が挿入されます。PassThrough=3を使用しているため、この文はOracle Databaseで実行されます。したがって、TimesTenで実行された場合と同じように、u文字を指定しません。Command> INSERT INTO my_tab VALUES (UNISTR(n'\0063\0064')); 1 row inserted.
-