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列上の機能インデックスとドメインインデックスを再構築する必要があります。