Могу ли я загрузить файлы фиксированной ширины в автономную базу данных Oracle?
У меня есть данные в больших файлах фиксированной ширины, и я хочу загрузить их в автономную базу данных Oracle (автономное хранилище данных). Я не вижу файлов фиксированной ширины, упомянутых в документации по загрузке данных. Как лучше всего загружать данные из файлов фиксированной ширины? Поддерживаются ли файлы фиксированной ширины в DBMS_CLOUD (COPY_DATA или CREATE_EXTERNAL_TABLE)?
2 ответа
Вы можете использовать DBMS_CLOUD.CREATE_EXTERNAL_TABLE для загрузки данных из исходного файла фиксированной ширины во внешнюю таблицу в автономной базе данных Oracle. Оттуда вы можете делать все, что пожелаете, например, вы можете создать обычную таблицу, переместить все/выбранные данные, выполнить ETL и т.д.
Для автономной базы данных используйте раздел «Действия с базой данных» и в разделе «Разработка/Панель запуска» выберите плитку SQL/рабочий лист SQL.
Ниже приведен краткий пример (из документации, но в сокращении).
BEGIN DBMS_CLOUD.CREATE_EXTERNAL_TABLE(
table_name => '<YOUR_TABLE_NAME>'
, credential_name => '<YOUR_CREDENTIAL_NAME>'
, file_uri_list => '<YOUR_ORACLE_OBJECT_STORE_URL>'
, format => json_object('trimspaces' value 'rtrim','skipheaders' value '1', 'dateformat' value 'YYYYMMDD')
, field_list => 'object_id (1:3) char
, object_name (4:14) char
, object_type (15:39) char’
, column_list => 'object_id number
, object_name varchar2(30)
, object_type varchar2(25)’);
END;
/
Дополнительные сведения см. в документации по автономной базе данных. https://docs.oracle.com/en/cloud/paas/autonomous-database/adbsa/load-data-cloud-examples.html#GUID-ED442E4C-9B4C-4A51-98AF-3BD7C8D68BF0
Это возможно с использованием общих возможностей DBMS_CLOUD по обработке текста / JSON.
Для примера см. Документацию здесь: