Sybase для Oracle перемещения стола - PullRequest
2 голосов
/ 15 января 2020

Я хочу переместить таблицы из моей базы данных sybase в мою базу данных oracle. Однако некоторые таблицы в моей базе данных sybase имеют длинные идентификаторы или имена таблиц (свыше 30 символов), поэтому функция «копировать в oracle» в Oracle SQL Developer продолжает давать сбой.

Как я могу перенести TABLE DATA только на мою oracle схему? Также обратите внимание, что я устал от процесса переноса данных, но когда я перехожу к шагу перемещения данных, он не позволяет мне перемещать данные таблицы. Это просто не видно. Это только позволит мне перенести процедуры и тому подобное. У меня что-то отключено?

1 Ответ

0 голосов
/ 15 января 2020

Вам необходимо включить длинные идентификаторы в вашей 12cR2 (12.2.xy) или более новой версии Oracle базы данных.

Как только вы установите для COMPATIBLE значение «12.2.0» или выше для вашей базы данных, Вы можете использовать длинные идентификаторы для каждого объекта в Oracle со следующими исключениями:

  • Имя базы данных ≤ 8 байт
  • Группы дисков ≤ 30 байт
  • PDB имена ≤ 30 байт
  • сегменты отката ≤ 30 байт
  • имена табличных пространств ≤ 30 байтов
  • наборы табличных пространств ≤ 30 байтов

Итак, давайте сделаем затем таблица ... Я использую 12.2 в этом сценарии, но он также будет найден в 18 c или 19 c.

enter image description here

Нажмите ОК, и я получу - Успех!

Copied Objects:
Sybase.copy_to_oracle.dbo.TABLE.this_is_a_table_to_hold_employees_please_dont_put_customers_in_it
Drop Target: HR
Copy DDL: Yes
Do Not Replace Existing Objects
Copy Data: Yes
Append Existing Objects
Task Succeeded.

1 table(s) copied.
    Created table this_is_a_table_to_hold_employees_please_dont_put_customers_in_it and inserted 0 row(s)
...