Я использую Oracle 11g XE. У меня есть схема, которая содержит некоторые таблицы с виртуальными столбцами. Виртуальные столбцы отлично смотрятся в схеме и ведут себя так, как ожидалось.Экспорт схемы с виртуальными столбцами
Я экспортировал дамп этой схемы, используя следующую команду:
expdp SYSTEM/SYSTEM schemas=TEST_SCHEMA dumpfile=TEST_SCHEMA.dpdmp
и импортировать его в другую базу данных с помощью следующей команды:
impdp SYSTEM/system SCHEMAS=TEST_SCHEMA DIRECTORY=dmpdir DUMPFILE=TEST_SCHEMA-2016.DPDMP TABLE_EXISTS_ACTION=replace LOGFILE=TEST_SCHEMA.log
импорта пошел нормально, но когда я проверил все виртуальные колонны они были сломаны. DATA_TYPE столбца был неправильным, это было NUMBER
вместо VARCHAR(36)
, а функция DATA_DEFAULT, которая была там в исходной схеме источника, не была в импортированной схеме, она была просто нулевой, и когда я просматривал фактические строки, значение в этом виртуальном столбец был «44», который был идентификатором столбца этого столбца.
Кто-нибудь знает, почему виртуальный столбец не прошел миграцию должным образом? Нужно ли указывать что-то, когда я экспортирую схему? Или это ошибка Oracle?
Спасибо за ответ Дэйв, но я не уверен, что это проблема. Я не создал свою собственную функцию, я просто использую функцию UPPER, а не пользовательскую функцию, поэтому я подумал, что должно работать нормально при создании таблицы? – Stackman
Кроме того, эти ошибки, похоже, связаны с проблемами, когда люди получают ошибки при импорте. Я никогда не получал никаких ошибок при импорте. – Stackman