既知の問題点
この項では、既知の問題について説明し、可能な場合はOracle Database Gateway for Sybaseで修正するための推奨事項を示します。
問題についての疑問は、Oracleサポート・サービスに問い合せてください。 現在の問題のリストは、オンライン上で入手できます。 リストへのアクセスに関する情報は、Oracleサポート・サービスに連絡してください。
既知の問題は次のとおりです:
暗号化形式のログイン
Oracleデータベースでは、初期化パラメータDBLINK_ENCRYPT_LOGINはサポートされなくなりました。
バージョン7.3まで、このパラメータのデフォルトTRUE値により、ログイン・ユーザーIDのパスワードが(クリアで)ネットワーク経由で送信されないようになりました。 それより後のバージョンでは、パスワードが自動的に暗号化されます。
日付計算
Oracle Database Gateway for Sybaseは、一部の日付算術関数をサポートしていません。
次のSQL式は、ゲートウェイでは正しく機能しません。
date + numbernumber + datedate - numberdate1 - date2
前述の式を含む文は、変換なしでSybaseデータベースに送信されます。 Sybaseはこれらの日付算術関数をサポートしていないため、文はエラーを返します。
Sybase IMAGEおよびTEXTデータ型
Oracle Database Gateway for SybaseでIMAGEおよびTEXTデータ型を使用する場合、制限があります。
IMAGEおよびTEXTデータ型を使用する場合は、次の制限が適用されます:
-
サポートされていないSQL関数は、Sybaseデータ型
IMAGEまたはTEXTとして定義されている列にアクセスするSQL文では使用できません。 -
データの長さが80文字を超える場合、SQL*Plusを使用して、Sybaseデータ型
IMAGEまたはTEXTとして定義されている列からデータを選択することはできません。 Oracleでは、Pro*CまたはOracle Call Interfaceを使用して、Sybaseデータベース内のこのようなデータにアクセスすることをお薦めします。 -
IMAGEおよびTEXTデータは、パススルー問合せを介して読み取れません。
ゲートウェイは、DBMS_SQLパッケージのPL/SQL関数COLUMN_VALUE_LONGをサポートしていません。
関連項目:
SQL構文に関する制限事項の詳細は、「サポート対象のSQL構文および関数」を参照してください。文字列関数
ゲートウェイを使用してSybaseデータベースを問い合せるときに、"||"演算子を使用して数値リテラルを連結した場合、結果は算術的な加算になります。
たとえば、次の文の結果は18であるとします:
SQL> SELECT 9 || 9 FROM DUAL@SYBS;
Oracleを使用してOracleデータベースを問い合せる場合、結果は99になります。
スキーマ名とPL/SQL
PL/SQLブロック内のSQL文でSybaseデータベース・オブジェクトのスキーマ名をプレフィクスとして付けないと、エラーが返されます。
たとえば:
ORA-6550 PLS-201 Identifier table_name must be declared.
SQL文を変更して、オブジェクトのスキーマ名を含めます。