我创建了一个varray,但是需要用它替换我的一个表中的一个属性。到目前为止,我已经输入:
CREATE or REPLACE TYPE PhoneList_vartyp AS VARRAY(10) of VARCHAR2(20);
我在Oracle中使用HR
模式,需要将Phone_number
表中的Employees
替换为varray PhoneList_vartyp
答案 0 :(得分:0)
您可以使用:
CREATE or REPLACE TYPE PhoneList_vartyp AS VARRAY(10) of VARCHAR2(20);
--renaming existing column
alter table employees rename column phone_number to phone_number_old;
-- adding new column
alter table employees add phone_number PhoneList_vartyp;
-- moving data
update employees
set phone_number = PhoneList_vartyp(phone_number_old);
commit;
-- removing old column
alter table employees drop column phone_number_old;