sql >> Databáze >  >> RDS >> Oracle

Oracle SQL pro změnu typu sloupce z čísla na varchar2, když obsahuje data

create table temp_uda1 (test1 integer);
insert into temp_uda1 values (1);

alter table temp_uda1 add (test1_new varchar2(3));

update temp_uda1 
   set test1_new = to_char(test1);

alter table temp_uda1 drop column test1 cascade constraints;
alter table temp_uda1 rename column test1_new to test1;

Pokud byl ve sloupci index, musíte jej znovu vytvořit.

Upozorňujeme, že aktualizace se nezdaří, pokud máte ve starém sloupci čísla větší než 999. Pokud ano, musíte upravit maximální hodnotu pro varchar sloupec



  1. PHP, MySQL a časová pásma

  2. Důležitost výběru správné velikosti virtuálního počítače Azure

  3. SQL IN operátor pro začátečníky

  4. Úloha SSIS pro nekonzistentní import počtu sloupců?