Как отбросить столбцы в Oracle7 - PullRequest
0 голосов
/ 01 марта 2019

Как удалить столбец таблицы в Oracle7?Да, да ... Мой клиент все еще использует эту версию: Oracle7 Server Release 7.3.4.5.0

или ... как изменить тип данных столбца с Varchar2 на Long ... в Oracle7 Server Release 7.3.4.50,0

1 Ответ

0 голосов
/ 01 марта 2019

Мое решение:

--1. Create a clone table.
CREATE TABLE tableA_aux
AS
   SELECT *
   FROM tableA;

/

-- 2. Alter table to accept null values (if is not nullable)
ALTER TABLE tableA MODIFY text varchar2(2000);

-- 3. Clear table column
UPDATE tableA
SET text = NULL;

COMMIT;

-- 4. Alter datatype to VARCHAR2 -> LONG
ALTER TABLE tableA MODIFY text LONG;


--5. Update the column with original values
UPDATE tableA s
SET s.text =
       (SELECT a.text
        FROM tableA_aux a
        WHERE a.PK_ID = s.PK_ID);

COMMIT;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...