Intershop 7 - Проблема с добавлением нового индекса в базу данных - PullRequest
1 голос
/ 07 октября 2019

Я пытаюсь запустить DatabaseIndexesPreparer через DBMigrate.bat и каждый раз, когда происходит сбой, поэтому я попытался запустить необходимый SQL напрямую через Oracle SQLDeveloper, и он также завершается с таким же сообщением. Это фрагмент, который я пытаюсь запустить: EXEC staging_ddl.create_index('HWDB_ID_INDEX', 'PRODUCT', 'HWDBID', 'IS_INDX', 'NONUNIQUE', 0);

Это результат / сообщение, которое я получаю:

ORA-00906: missing left parenthesis
ORA-06512: at "INTERSHOP.SQL_UTIL", line 149
ORA-06512: at "INTERSHOP.SQL_UTIL", line 49
ORA-06512: at "INTERSHOP.DDL", line 354
ORA-01403: no data found
ORA-06512: at "INTERSHOP.STAGING_DDL", line 235
ORA-06512: at line 1
00906. 00000 -  "missing left parenthesis"

Дополнительная информация

Все это сделанона Intershop 7.10. HWDBID - это прямой настраиваемый атрибут (DCA), успешно добавленный через DBMigrate после этой поваренной книги: https://support.intershop.com/kb/index.php/Display/L24707

Фрагмент SQL также основан на разделе 4, посвященном добавлению индекса базы данных

1 Ответ

3 голосов
/ 08 октября 2019

Попробуйте:

EXEC staging_ddl.create_index('HWDB_ID_INDEX', 'PRODUCT', '(HWDBID)', 'IS_INDX', 'NONUNIQUE', 0);

Кажется, вам всегда нужно заключать столбцы в скобки. Из примера, который я нашел в 7.9 и 7.10, все сделано следующим образом.

...