Создание таблицы в Oracle с использованием таблицы sql server

#sql-server #oracle #sql-server-2008 #oracle10g #data-transfer

#sql-сервер #Oracle #sql-server-2008 #oracle10g #передача данных

Вопрос:

У меня есть таблица в SQL Server 2008 R2. Она содержит 1 млн или более записей. Теперь я хочу создать таблицу в Oracle с тем же содержимым, что и в SQL Server 2008 R2.

Ответ №1:

Существует несколько способов сделать это. Сначала вы можете ознакомиться со следующим руководством: Перенос базы данных Microsoft SQL Server в Oracle Database 11g

Я выполнял эту задачу в прошлом, используя следующие шаги:

  1. Создайте таблицу в базе данных Oracle (только схему, не данные).
  2. Экспортируйте данные с SQL server в 1 или более файлов формата CSV (или любых других файлов с разделителями (я предлагаю создавать файлы, содержащие не более 100 000 записей)
  3. Используйте SQL*Loader (утилита Oracle) для загрузки данных из файлов в oracle.

Утилита Oracle SQL*Loader — это инструмент командной строки, который позволяет загружать данные из файлов в Oracle. Он использует управляющий файл, который определяет исходный файл, его структуру и стратегию загрузки.

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

Вот ссылка на руководство по загрузке SQL: ЧАСТО задаваемые вопросы по SQL * Loader

Из этого руководства:

Использование:

  sqlldr username/password@server control=loader.ctl
  

Образец управляющего файла:

 (1) load data
(2)    infile 'c:datamydata.csv'
(3)   into table emp
(4)    fields terminated by "," optionally enclosed by '"'        
(5)    ( empno, empname, sal, deptno )
  

Строка 1: Указывает, что вы хотите загрузить данные в таблицу

Строка 2: Указывает исходный файл, содержащий данные

Строка 3: Указывает целевую таблицу

Строка 4: Указывает разделитель столбцов (запятая в примере) и что строковые значения могут быть заключены в символ «char.

Строка 5: Задает порядок столбцов в файле

Пример файлов данных (соответствует файлу управления выше):

 10001,"Scott Tiger", 1000, 40
10002,"Frank Naude", 500, 20
  

Надеюсь, это помогло.

Коби