Oracle
 sql >> база данни >  >> RDS >> Oracle

Oracle SQL за промяна на типа на колоната от число на varchar2, докато съдържа данни

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;

Ако е имало индекс в колоната, трябва да го създадете отново.

Обърнете внимание, че актуализацията ще бъде неуспешна, ако имате числа в старата колона, които са по-големи от 999. Ако го направите, трябва да коригирате максималната стойност за varchar колона



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. HQL е null И !=null в колона на Oracle

  2. Oracle SQL Developer 21.4.2 и SQLcl 21.4.1 вече са налични

  3. Изпълнение на SUBSTR на CLOB

  4. Функция CURRENT_DATE в Oracle

  5. Игнорирайте параметъра за период от време в клаузата where, когато параметърът не е въведен