Bサポート対象のSQL構文および関数
- サポート対象のSQL文
Oracle Database Gateway for ODBCでDELETE
、INSERT
、SELECT
、UPDATE
の各文がサポートされるのは、ODBCドライバとOracle以外のシステムがそれらを実行でき、かつサポート対象のOracle SQL関数が文に含まれている場合のみです。 - Oracle関数
すべての関数は、ゲートウェイによりネイティブSQLに変換された後、Oracle以外のシステムにより評価されます。Oracle以外のシステムでは、関数の限定セットのみがサポートされると想定されます。ほとんどのOracle関数には、この限定セットと同等の関数はありません。したがって、Oracleデータベースによって後処理が実行されても、Oracle Database Gateway for ODBCは多くの関数をサポートせず、パフォーマンスに影響することがあります。
サポート対象のSQL文
Oracle Database Gateway for ODBCでDELETE
、INSERT
、SELECT
、UPDATE
の各文がサポートされるのは、ODBCドライバとOracle以外のシステムがそれらを実行でき、かつサポート対象のOracle SQL関数が文に含まれている場合のみです。
いくつかの例外はあるものの、ゲートウェイではOracleのDELETE
文、INSERT
文、SELECT
文およびUPDATE
文が完全サポートされています。
ゲートウェイでは、Oracleデータ定義言語(DDL)文はサポートされていません。OracleのALTER
文、CREATE
文、DROP
文、GRANT
文またはTRUNCATE
文の形式は一切使用できません。ALTER
文、CREATE
文、DROP
文およびGRANT
文で、Oracle以外のシステムのデータベースに対してDDL文を使用する必要がある場合は、かわりにゲートウェイのパススルー機能を使用します。
注意:
TRUNCATE
はパススルー文では使用できません。
関連項目:
キーワード、パラメータおよびオプションの詳細な説明は、『Oracle Database SQL言語リファレンス』を参照してください。
Oracle関数
すべての関数は、ゲートウェイによりネイティブSQLに変換された後、Oracle以外のシステムにより評価されます。Oracle以外のシステムでは、関数の限定セットのみがサポートされると想定されます。ほとんどのOracle関数には、この限定セットと同等の関数はありません。したがって、Oracleデータベースによって後処理が実行されても、Oracle Database Gateway for ODBCは多くの関数をサポートせず、パフォーマンスに影響することがあります。
Oracle SQL関数がOracle Database Gateway for ODBCでサポートされない場合、この関数はDELETE
、INSERT
またはUPDATE
文でサポートされません。SELECT
文で、これらの関数はOracle以外のシステムから返された後にOracleデータベースによって評価され、処理されます。
サポート対象外の関数がDELETE
文、INSERT
文またはUPDATE
文で使用されると、次のOracleエラーが生成されます。
ORA-02070: database db_link_name does not support function in this context
Oracle Database Gateway for ODBCでは、使用されるODBCドライバで次の最小セットのSQL関数がサポートされることが想定されます。
-
AVG(
exp
)
-
LIKE(
exp
)
-
COUNT(*)
-
MAX(
exp
)
-
MIN(
exp
)
-
NOT