6 LOBに対するSQLセマンティクス
様々なSQLメカニズムを使用してLOBを操作できます。
SQL文字列演算子やSQLファンクションなど、SQL VARCHAR2
セマンティクスを使用して、CLOB
データ型とNCLOB
データ型にアクセスできます。これらの手法を使用すると、LOBをSQLコードで直接使用し、一部の操作にLOB固有のAPIを使用するかわりに使用できるため、次のような場合に役立ちます。
- 比較的小さいサイズ(約100KB以下)のLOBに対して操作を実行する場合
- 既存のPL/SQLアプリケーションに含まれるSQL文字列関数が引き続き機能するように、データベースを
LONG
列からLOBデータ型に移行した後
次の状況では、SQLセマンティクスはお薦めしません。かわりにLOB APIを使用する必要があります。
- ランダム・アクセスやピース単位フェッチなどの高度な機能を使用する場合。
- 比較的大きいサイズ(1 MBを超える場合)のLOBに対してSQLセマンティクスを使用するとパフォーマンスが低下する可能性があるため、操作を実行する場合。
ノート:
SQLセマンティクスは永続LOBおよび一時LOBで使用され、BFILEには適用されません。- LOBとの併用がサポートされるSQL関数および演算子
引数としてVARCHAR2
列を取る多くのSQL演算子および関数は、LOB列も受け入れます。次のリストに、LOBとの併用がサポートされるSQL関数および演算子のカテゴリを示します。 - LOBに対するSQL操作のセマンティクスの詳細
この項では、LOBに対するSQL操作のセマンティクスについて詳細に説明します。 - LOBに対するSQL操作に関する制限事項
LOB列でサポートされていない多くのSQL操作があります。この項では、これらの操作について説明します。