Oracle копирует данные в другую таблицу

В Oracle я копирую данные из резервной копии в новую таблицу, она не работает.

Каков правильный синтаксис?

Спасибо

select CODE, MESSAGE into EXCEPTION_CODES (CODE, MESSAGE)
from Exception_code_tmp

ошибка

**SQL Error: ORA-00905: missing keyword
00905. 00000 -  "missing keyword"**

Ответ 1

Вам нужен INSERT ... SELECT

INSERT INTO exception_codes( code, message )
  SELECT code, message
    FROM exception_code_tmp

Ответ 2

Если вы хотите создать таблицу с данными. Сначала создайте таблицу:

create table new_table as ( select * from old_table); 

а затем вставьте

insert into new_table ( select * from old_table);

Если вы хотите создать таблицу без данных. Вы можете использовать:

create table new_table as ( select * from old_table where 1=0);

Ответ 3

Создание таблицы и копирование данных по одной команде:

create table T_NEW as
  select * from T;

* Это будет не копировать PK, FK, триггеры и т.д.

Ответ 4

insert into EXCEPTION_CODES (CODE, MESSAGE)
select CODE, MESSAGE from Exception_code_tmp