Опция импорта оракула

У меня простой вопрос: как именно вы используете инструмент импорта оракула для импорта базы данных с возможностью автоматического изменения размера столбца, чтобы он автоматически соответствовал данным перед импортом данных.

Приведите пример: если у меня есть таблица TABLE1, в которой есть столбец с именем «комментарий», длина поля комментария составляет 250. Поскольку я импортирую TABLE1 из источника (который находится в западной кодировке) в целевую базу данных (которая является AL- набор символов UTF32). Данные некоторых записей будут расти, т. е. данные поля комментария 1 записи увеличатся с 250 до 260 из-за преобразования набора символов.

Мой вопрос: как мне импортировать TABLE1, чтобы целевая база данных автоматически изменила поле «комментарий» с 250 на максимальную длину поля данных этого поля (после преобразования набора символов данные увеличиваются). Так что я могу импортировать TABLE1 без ошибок.

Что такое опция импорта или командная строка? Есть ли способ узнать, какие столбцы вызывают проблемы с данными?

Спасибо


person rvpals    schedule 28.04.2015    source источник
comment
Ваш столбец определен как 250 байт или 250 символов? Если последнее — а это звучит так, как должно быть — то вам не нужно менять размер. Я не думаю, что вы все равно увидите «рост» от существующих западных данных к UTF. И если вы измените размер в байтах, он должен быть достаточно широким для любых будущих данных, а не только для того, что у вас есть сейчас. Вы создаете таблицу перед импортом данных или импорт создает ее?   -  person Alex Poole    schedule 28.04.2015
comment
В исходной базе данных столбцы определены как 250 байт (не символов). Мы обнаружили, что при переходе с западного на UTF некоторые данные в этих столбцах после преобразования занимают более 250 байт, что приводит к усечению, если их не обрабатывать. Импорт — это создание таблиц в таргете.   -  person rvpals    schedule 29.04.2015
comment
Можно ли заранее создать таблицы в целевой базе данных, используя семантику символов вместо семантики байтов? Импорт Data Pump и устаревший импорт могут работать с уже существующими объектами с соответствующими параметрами командной строки.   -  person Alex Poole    schedule 29.04.2015


Ответы (1)


В идеале вы должны создать свою целевую таблицу заранее, с шириной столбцов, которые вам нужно определить в этот момент. Затем вы должны настроить элемент управления sqlldr (SQL Loader). файл в ваш входной формат.

person Politank-Z    schedule 28.04.2015
comment
Кажется, это единственный способ сделать это. - person rvpals; 30.04.2015