Создать TYPE
CREATE TYPE ADDRESS_TYP AS OBJECT
(
state NUMBER(6),
street VARCHAR2(50),
city VARCHAR2(50)
);
ADD
столбец типа объекта для TABLE
ALTER TABLE YOURTABLE ADD ( ADDRESS ADDRESS_TYP );
Обновить новый столбец ADDRESS
из существующих значений в столбце.
UPDATE YOURTABLE SET ADDRESS = ADDRESS_TYP( state,street,city );
Остальное оставлено на ваше усмотрение, хотите ли вы сохранить старые столбцы в таблице или нет. Но если вы отбрасываете эти столбцы, четко знайте зависимости, такие как INDEX,FOREIGN KEY
с и т.
Для больших наборов данных обновление может быть немного медленным. Вы можете использовать некоторые из методов, обсуждаемых здесь: Ask TOM