TO_LOB
構文
目的
TO_LOB
は、long_column
列のLONG
またはLONG
RAW値をLOB値に変換します。このファンクションはLONG
またはLONG
RAW
列に対してのみ、およびINSERT
文における副問合せのSELECT構文のリストにおいてのみ適用できます。
このファンクションを使用する前に、LOB列を作成して変換されたLONG
値を受け取る必要があります。LONG
値を変換する場合は、CLOB
列を作成します。LONG
RAW値を変換する場合は、BLOB
列を作成します。
索引構成表を作成する場合は、CREATE
TABLE
... AS
SELECT
文の副問合せで、TO_LOB
ファンクションを使用してLONG
列をLOB列に変換することはできません。LONG
列を含まない索引構成表を作成し、INSERT
...AS
SELECT
文でTO_LOB
ファンクションを使用してください。
このファンクションは、PL/SQLパッケージ内で使用できません。かわりに、TO_CLOB
(文字)ファンクションまたはTO_BLOB
(RAW)ファンクションを使用してください。
関連項目:
-
LONG
列をLOBに変換する別の方法については、「ALTER TABLE」のmodify_col_properties
句を参照してください。 -
INSERT
文の副問合せについては、「INSERT」を参照してください。 -
このファンクションの文字の戻り値に割り当てる照合を定義する照合導出ルールは、『Oracle Databaseグローバリゼーション・サポート・ガイド』の付録Cを参照してください。
例
次の例では、不確定な表old_table
のLONG
データに対するTO_LOB
ファンクションの使用方法を示します。
CREATE TABLE new_table (col1, col2, ... lob_col CLOB); INSERT INTO new_table (select o.col1, o.col2, ... TO_LOB(o.old_long_col) FROM old_table o;