CLOSE ステートメントは、以前に開いた内部または外部の LOB を閉じるために使用します。
適用対象
この内容はOceanBaseデータベースEnterprise Editionにのみ適用されます。OceanBaseデータベースCommunity EditionはMySQLモードのみを提供します。
構文
DBMS_LOB.CLOSE (
lob_loc IN OUT NOCOPY BLOB);
DBMS_LOB.CLOSE (
lob_loc IN OUT NOCOPY CLOB CHARACTER SET ANY_CS);
パラメータの説明
パラメータ |
説明 |
|---|---|
| lob_loc | LOBのロケーターです。DBMS_LOBの使用方法を参照してください。 |
使用方法
CLOSEは内部および外部LOBとサーバー間で往復する必要があります。内部LOBの場合、CLOSEはcloseを呼び出した他のコードをトリガーします。すべての
LOB操作をOpen/Closeインターフェースで囲むことは必須ではありません。LOBを開いた場合、トランザクションをコミットする前にそれを閉じなければなりません。そうしないとエラーが発生します。内部LOBを閉じると、LOB列上の機能インデックスとドメインインデックスが更新されます。トランザクションで開いたすべての
LOBを閉じる前にトランザクションをコミットすると、エラーが発生します。エラーが返された場合、開いたLOBのオープン状態は破棄されますが、トランザクション内のLOBおよび非LOBデータに対して行われたすべての変更は正常にコミットされます。ただし、ドメインおよび機能に基づくインデックスは更新されません。このような場合は、LOB列に機能インデックスとドメインインデックスを再構築する必要があります。