Как установить значение по умолчанию для столбца новой созданной таблицы из оператора select в 11g

Я создаю таблицу в Oracle 11g со значением по умолчанию для одного из столбцов. Синтаксис:

create table xyz(emp number,ename varchar2(100),salary number default 0);

Это успешно создано. По некоторым причинам мне нужно создать другую таблицу с той же старой структурой таблицы и данными. Итак, я создал новую таблицу с именем abc as

create table abc as select * from xyz. 

Здесь «abc» успешно создан с той же структурой и данными, что и старая таблица xyz . Но для столбца «зарплата» в старой таблице «xyz» по умолчанию было установлено значение «0». Но во вновь созданной таблице «abc» значение по умолчанию не установлено.

Это все в Oracle 11g. Скажите, пожалуйста, причину, по которой значение по умолчанию не было установлено, и как мы можем установить это с помощью оператора select.

21
задан Brian Tompsett - 汤莱恩 1 November 2016 в 22:54
поделиться