Импорт и переназначение таблиц без добавления первичного ключа и индексов

Я пытаюсь импортировать дамп в базу данных. в дампе есть таблица table1, которая уже существует в базе данных, которую я использовал, я использовал remap_table.

impdp schema/pass@server remap_table = table1:table_BR1 directory=TEST_DIR1 dumpfile=table_BR1.dmp logfile=table1.log  

Однако проблема, с которой я сталкиваюсь, это также создание первичного ключа и индекса, что приводит к ошибкам "ограничения уже существуют". В моем реальном сценарии у меня есть несколько таблиц.

Мой вопрос, есть ли способ, которым я могу переназначить таблицы без добавления первичных ключей и indexex?

1 ответ

Решение

В IMPDP вы можете использовать:

CONTENT=DATA_ONLY

DATA_ONLY загружает только данные строки таблицы в существующие таблицы; объекты базы данных не создаются.

Другие способы,

Вы можете явно указать не импортировать индексы и ограничения в качестве аргументов командной строки.

rows=Y indexes=N constraints=N

Это будет импортировать только данные, а не индексы и ограничения.

Также для подавления сообщений об ошибках вы можете их игнорировать:

IGNORE=Y

Чтобы увидеть список всех команд импорта, выполните:

impdp help=y

В качестве альтернативы, если вы знаете имена INDEX, вы можете использовать команду EXCLUDE.

Например,

EXCLUDE=INDEX:"LIKE 'DEPT%'"

Это исключит все индексы, имена которых начинаются с dept.

Другие вопросы по тегам