Вы можете удалить колонки, которые Вам больше не нужны, освободив занимаемое ими пространство. Для этого используется ключевое слово DROP.
определение_удаляемых_столбцов =
{COLUMN имя_колонки | (список_столбцов)} [CASCADE CONSTRAINS]
При удалении колонки удаляются все данные столбца, все индексы, построенные для этого столбца и все ограничения на удаляемый столбец.
SQL> DESC t1
Name Null? Type
----------------------------------------- -------- ---------------
FIRST NOT NULL NUMBER
SECOND NUMBER
SQL> DESC t2
Name Null? Type
----------------------------------------- -------- ---------------
FIRST NUMBER
NAME VARCHAR2(20)
SQL> ALTER TABLE t2 DROP COLUMN name;
Table altered.
Если вы хотите удалить все ограничения внешнего ключа, которые ссылаются на удаляемый столбец или удалить все составные ограничения, включающие удаляемый столбец, укажите ключевое слово CASCADE CONSTRAINTS. В противном случае сервер базы данных вернет ошибку.
SQL> ALTER TABLE t1 DROP (first);
ALTER TABLE t1 DROP (first)
*
ERROR at line 1:
ORA-12992: cannot drop parent key column
SQL> ALTER TABLE t1 DROP (first) CASCADE CONSTRAINTS;
Table altered.
SQL> DESC t1
Name Null? Type
----------------------------------------- -------- ---------------
SECOND NUMBER
SQL> DESC t2
Name Null? Type
----------------------------------------- -------- ---------------
FIRST NUMBER