sql >> Base de Datos >  >> RDS >> Oracle

Convertir Long a Varchar2

Convirtiendo desde long a varchar2 No es posible usar una sola declaración de inmediato, ya que long tiene ciertas restricciones.

Puedes Crear una tabla temporal o use código PL/SQL para resolver su problema:

  • Tabla Temporal:

    CREATE TABLE TABLE2 AS SELECT TO_LOB(COLUMN1) COLUMN FROM TABLE1;

  • Código PL/SQL:

    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;