DBMS_LOB
TimesTen Classicで、DBMS_LOB
パッケージは、一時LOBを含む、BLOB、CLOB、およびNCLOBを操作するためのサブプログラムを提供します。
ノート:
-
TimesTenは、特にBFILE、SecureFile(Database File System機能など)を対象とした
DBMS_LOB
サブプログラム、またはLOB内のデータ・フラグメントの挿入や削除をサポートしていません。 -
DBMS_LOB
プロシージャおよびファンクションは、TimesTenを使用してアクセスされ、TimesTen LOBとして公開されるOracle DatabaseのLOBである、TimesTen LOBおよびパススルーLOBの両方でサポートされています。ただし、CREATETEMPORARY
を使用できるのは、TimesTenの一時LOBを作成する場合のみであることに注意してください。SQLなどの他の方法を使用して一時パススルーLOBを作成する場合、ISTEMPORARY
およびFREETEMPORARY
をそのLOBに使用できます。TimesTenローカルLOBと同様、パススルーLOBのロケータは、トランザクションが終了すると無効になります。
COPY
は、あるTimesTen LOBから別のTimesTen LOBにコピーできるだけでなく、TimesTen LOBからパススルーLOBにコピーしたり、パススルーLOBからTimesTen LOBにコピーしたり、またはあるパススルーLOBから別のパススルーLOBにコピーすることもできます。パススルーLOBのサイズがTimesTen LOBのサイズ制限より大きい場合、パススルーLOBをTimesTen LOBにコピーしようとするとエラーが発生します。(LOBのコピーの例は、『Oracle TimesTen In-Memory Database PL/SQLパッケージ・リファレンス』のCOPYプロシージャを参照してください。)「パススルーLOB」を参照してください。
表7-1に、サポートされているDBMS_LOB
のサブプログラムを示します。
表7-1 DBMS_LOBのサブプログラム
サブプログラム | 説明 |
---|---|
|
ソースLOBの内容を宛先LOBに追加します。 |
|
オープンされているLOBをクローズします。 |
|
2つのLOB全体、または2つのLOBの一部を比較します。 |
|
ソース |
|
ソース |
|
ソースLOBの内容を宛先LOBにコピーします。 |
|
一時データ領域に一時LOBを作成します。Oracle Databaseでサポートされている期間のいずれか( |
|
すべてまたは一部のLOBを削除します。 |
|
一時データ領域の一時LOBを解放します。 |
|
指定したLOBのLOB型の記憶域制限を戻します。 |
|
これは、TimesTenでは、互換性のために値32KBを戻すだけです。パフォーマンスをチューニングする際にこの値を使用しないでください。 |
|
BLOBはバイト単位で、CLOBまたはNCLOBは文字単位で、LOB値の長さを戻します。 |
|
LOBにあるパターンのn番目の一致のマッチング位置を戻します。 |
|
LOBが入力ロケータを使用して、すでにオープンされたかどうかをチェックします。 |
|
ロケータが一時LOBを指しているかどうかを確認します。 |
|
指定のモード(読取り/書込みまたは読取り専用)でLOB(永続または一時)を開きます。 ノート: LOBをオープンすることは、ファイルを開くことと概念的に似ていますが、技術的には同じではありません。LOBをオープンすることは、必要なリソースに関するヒントのようなものです。 |
|
指定されたオフセットからLOBのデータを読み取ります。 |
|
指定されたオフセットからLOB値の一部を戻します。 |
|
指定された長さまでLOB値を切り捨てます。 |
|
指定されたオフセットからLOBにデータを書き込みます。 |
|
LOBの終わり以降にバッファを書き込みます。 |