Oracle
 sql >> Base de données >  >> RDS >> Oracle

Conversion de Long en Varchar2

Conversion depuis long à varchar2 utiliser immédiatement une seule instruction n'est pas possible, car long a certaines restrictions.

Vous pouvez soit Créer une table temporaire ou utilisez le code PL/SQL pour résoudre votre problème :

  • Table temporaire :

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

  • Code 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;