Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Проблемы миграции PL/SQL кода с Oracle 10.2 на DB2 9.7.2 / 8 сообщений из 8, страница 1 из 1
09.07.2010, 09:24
    #36731766
sle
sle
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы миграции PL/SQL кода с Oracle 10.2 на DB2 9.7.2
Добрый день всем!
Пытаюсь перенести приложение, много кода на PL/SQL с oracle 10.2 на DB2 9.7.2
Выставил параметр:
DB2_COMPATIBILITY_VECTOR=ORA

Как помощника в миграции использую IBM Data Movement Tool.
Что-то переносится, но проблем очень много.

Например, subtype перенести не получается:

SQL>create or replace package test as
2 subtype t_my_name is varchar2(30);
3 end;
4 /
ERROR near line 1:
SQL0104N An unexpected token "is" was found following " subtype t_my_name is varchar2(30)". Expected tokens may include: "".
SQL>

Есть в IBM Data Movement Tool такая утилита как AutoFix которая якобы в проблемных
местах может помочь в переносе кода. Мне пока не помогла.
Например, после того как я ей скормил вышеприведённый пакет, она мне выдала на выходе следующий перл:

create or replace package test as
--PDA subtype replaced further in the file: subtype t_my_name is varchar2(30);
end;
/

Кто-нибудь слышал что с этим можно сделать?
Есть в DB2 аналог оракловского subtype ?
...
Рейтинг: 0 / 0
09.07.2010, 11:38
    #36732108
ARIST_A
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы миграции PL/SQL кода с Oracle 10.2 на DB2 9.7.2
sle,

Почитайте вот это http://www.ibm.com/developerworks/data/library/techarticle/dm-0907oracleappsondb2/index.html
В частности есть инструмент DB2 MEET, который генерит отчет по совместимости ваших кодов.

Если что пишите на isv _dog_ ru.ibm.com
Поможем разобраться.
...
Рейтинг: 0 / 0
09.07.2010, 23:04
    #36733624
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы миграции PL/SQL кода с Oracle 10.2 на DB2 9.7.2
sleНапример, subtype перенести не получается:

SQL>create or replace package test as
2 subtype t_my_name is varchar2(30);
3 end;
4 /
ERROR near line 1:
SQL0104N An unexpected token "is" was found following " subtype t_my_name is varchar2(30)". Expected tokens may include: "".
SQL>

Есть в IBM Data Movement Tool такая утилита как AutoFix которая якобы в проблемных
местах может помочь в переносе кода. Мне пока не помогла.
Например, после того как я ей скормил вышеприведённый пакет, она мне выдала на выходе следующий перл:

create or replace package test as
--PDA subtype replaced further in the file: subtype t_my_name is varchar2(30);
end;
/

Кто-нибудь слышал что с этим можно сделать?
Есть в DB2 аналог оракловского subtype ?Здравствуйте.
subtype пока не поддерживается.
Просто замените t_my_name везде в пакете на varchar2(30).
...
Рейтинг: 0 / 0
10.07.2010, 15:59
    #36734011
sle
sle
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы миграции PL/SQL кода с Oracle 10.2 на DB2 9.7.2
Mark Barinstein,

Очень грустно... :-(((

Легко сказать заменить, а если это в сотнях пакетов, сотни тысяч строк кода?
И таких субтипов десятки...

Пока придумал вот что:
меняю:
subtype t_my_name is varchar2(30);
на
t_my_name varchar2(30);

И потом везде заменяю использование:
my_var t_my_name;
на
my_var t_my_name%type;

это проще чем менять на my_var varchar2(30)...

И то уже озверел...

Неужто нет ничего нормального?
Создание типов как отдельных объектов в БД не предлагать.
Во-первых неохота иметь десятки лишних карликовых объектов, во-вторых это не спасает
от правки по месту использования, так как subtype объявлены в пакетах
и используются везде с префиксом имени пакета.
...
Рейтинг: 0 / 0
10.07.2010, 16:05
    #36734018
sle
sle
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы миграции PL/SQL кода с Oracle 10.2 на DB2 9.7.2
Да, ещё вопрос:
Есть в DB2 аналог оракловского селекта из PL/SQL таблиц (коллекций):

select field1 into var1 from table(cast(v_table as t_table));
...
Рейтинг: 0 / 0
10.07.2010, 17:51
    #36734063
mustaccio
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы миграции PL/SQL кода с Oracle 10.2 на DB2 9.7.2
sle
Есть в DB2 аналог оракловского селекта из PL/SQL таблиц (коллекций):

select field1 into var1 from table(cast(v_table as t_table));

Функция UNNEST()
...
Рейтинг: 0 / 0
10.07.2010, 17:53
    #36734066
mustaccio
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы миграции PL/SQL кода с Oracle 10.2 на DB2 9.7.2
https://publib.boulder.ibm.com/infocenter/db2luw/v9r7/topic/com.ibm.db2.luw.sql.ref.doc/doc/r0055064.html
...
Рейтинг: 0 / 0
11.07.2010, 12:44
    #36734561
sle
sle
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы миграции PL/SQL кода с Oracle 10.2 на DB2 9.7.2
mustaccio,

BINGO! Большое спасибо! Работает! То что нужно! :-)))

Вот ещё бы с subtype так-же... :-)
...
Рейтинг: 0 / 0
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Проблемы миграции PL/SQL кода с Oracle 10.2 на DB2 9.7.2 / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]