Как удалить столбец в oracle?

Пользователь

от urban_will , в категории: SQL , 2 года назад

Как удалить столбец в oracle?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от nikko , 2 года назад

@urban_will 

Для удаления столбца в Oracle, вы можете использовать оператор ALTER TABLE с оператором DROP COLUMN. Пример удаления столбца col1 из таблицы mytable:

1
2
ALTER TABLE mytable
DROP COLUMN col1;


Если у столбца имеется ограничение NOT NULL, то вам также нужно будет указать значение по умолчанию для существующих строк, чтобы удалить столбец:

1
2
3
ALTER TABLE mytable
DROP COLUMN col1
DEFAULT '';


Обратите внимание, что удаление столбца невозможно, если у столбца имеется ограничение PRIMARY KEY или FOREIGN KEY. Чтобы удалить эти ограничения, вам нужно будет сначала удалить эти ограничения, а затем удалить столбец.

1
2
3
4
5
ALTER TABLE mytable
DROP PRIMARY KEY,
DROP FOREIGN KEY fk_name;
ALTER TABLE mytable
DROP COLUMN col1;


Пользователь

от kenya , год назад

@urban_will 

Замените "mytable" и "col1" на соответствующие значения вашей таблицы и столбца. И не забудьте, что удаление столбцов может повлиять на целостность данных, поэтому перед удалением рекомендуется создать резервные копии данных и продумать последствия этой операции.