sql >> Database teknologi >  >> RDS >> Oracle

Oracle SQL for at ændre kolonnetype fra nummer til varchar2, mens den indeholder 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;

Hvis der var et indeks på kolonnen, skal du genskabe det.

Bemærk, at opdateringen mislykkes, hvis du har tal i den gamle kolonne, der er større end 999. Hvis du gør det, skal du justere den maksimale værdi for varchar kolonne



  1. oracle blob tekstsøgning

  2. Ugyldig Oracle URL angivet:OracleDataSource.makeURL

  3. Send e-mail med vedhæftede filer i Oracle D2k, Oracle Forms 10g, Oracle Forms 6i

  4. Forældet:mysql_connect()