Ver Mensaje Individual
  #2 (permalink)  
Antiguo 25/02/2009, 12:08
Avatar de matanga
matanga
 
Fecha de Ingreso: octubre-2007
Ubicación: España
Mensajes: 1.091
Antigüedad: 17 años
Puntos: 85
Respuesta: Pasar de tipo de datos clob a varchar2

En primer lugar, los tipos clob soportan hasta 4GB de datos y los varchar2 hasta 4k, por lo tanto, tendrás que decidir que porcion de 4k del clob quieres pasar a la columna varchar, en el ejemplo tomo los primeros 4000 caracteres.

Código:
oracle@10G> create table t1 (id number, data varchar2(4000), data2 clob);

Tabla creada.

oracle@10G> insert into t1 (id, data2) values (1,'datos 1');

1 fila creada.

oracle@10G> insert into t1 (id, data2) values (2,'datos 2');

1 fila creada.

oracle@10G> insert into t1 (id, data2) values (3,'datos 3');

1 fila creada.

oracle@10G> update t1 set data = dbms_lob.substr(data2,4000);

3 filas actualizadas.

Transcurrido: 00:00:00.01

oracle@10G> select * from t1;

        ID DATA                           DATA2
---------- ------------------------------ --------------
         1 datos 1                        datos 1
         2 datos 2                        datos 2
         3 datos 3                        datos 3
Saludos