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