two - update replace oracle
Reemplace CHAR con VARCHAR2 (1)
¿Cómo puedo reemplazar CHAR
con VARCHAR2
en todas las tablas en un esquema?
Nota: Estoy satisfecho con una consulta que devuelve las instrucciones ALTER TABLE
para que pueda guardar el script y ejecutarlo nuevamente.
select ''ALTER TABLE "'' || owner || ''"."'' || table_name
|| ''" MODIFY ("'' || column_name
|| ''" VARCHAR2('' || data_length || ''));''
from all_tab_columns tc
where data_type = ''CHAR''
and owner = :schemaname
and exists (
select 1
from all_tables t
where tc.owner = t.owner
and tc.table_name = t.table_name
);