Konvertering fra long
til varchar2
med det samme at bruge en enkelt sætning er ikke mulig, da long
har visse begrænsninger.
Du kan enten Oprette en midlertidig tabel eller brug PL/SQL-kode for at løse dit problem:
-
Midlertidig tabel:
CREATE TABLE TABLE2 AS SELECT TO_LOB(COLUMN1) COLUMN FROM TABLE1;
-
PL/SQL-kode:
DECLARE VAR1 LONG; VAR2 VARCHAR2(4000); BEGIN SELECT TEXT INTO VAR1 FROM USER_VIEWS WHERE ROWNUM = 1; VAR2 := SUBSTR(VAR1, 1, 4000); DBMS_OUTPUT.PUT_LINE(VAR2); END;