Зависит от версии. Начиная с 11g, вы можете выполнить простую команду ALTER TABLE
, и это не повлияет, значение по умолчанию не материализуется и не берется из словарной информации.
alter table tablename add columnname varchar2(2) default 'XX' not null;
Вышеприведенный оператор не выдаст обновления для всех записей таблицы [...] Когда пользователь выбирает столбец для существующей записи, Oracle получает факт о значении по умолчанию из словаря данных [...] ] и до сих пор не понесли никакого наказания за повтор и отмену генерации [...]
Источник здесь , глава "Добавление столбцов со значением по умолчанию"