Oracle 12.2 - замена функции NOPARTITION - PullRequest
0 голосов
/ 10 октября 2018

У меня версия Oracle 12.2.0.1.0

У нас есть универсальный скрипт, который создает последовательность, которую необходимо повторно использовать для различных объектов (переименовывая имя последовательности):

CREATE SEQUENCE NAME_SEQ MINVALUE 1 MAXVALUE 999999999
INCREMENT BY 1 START WITH 100 CACHE 200 NOORDER  NOCYCLE  NOPARTITION ;

Thisскрипт не работает с приведенной ниже ошибкой, пока я не удалю NOPARTITION:

   ORA-00933: SQL command not properly ended

Я обнаружил в AskTom, что NOPARTITION не поддерживается в 12.2

в предыдущих версиях базы данных было много вещей, которые больше не актуальны / не поддерживаются

Почему это не поддерживается и / или что заменяет эту функцию?

Еслинет замены, можете ли вы сказать, почему эту функцию не следует использовать?

Ответы [ 2 ]

0 голосов
/ 12 февраля 2019

Если вы делаете dbms_metadata.get_ddl из базы данных версии 12.1 и хотите использовать его в 12.2, тогда предоставляется NOPARTITION.Теперь мы должны удалить его.

0 голосов
/ 10 октября 2018

Параметр (нет) для последовательностей был никогда задокументирован.И поэтому никогда не поддерживается.

В 12.1 была ошибка, которая выявила это через dbms_metadata.Это больше не происходит в 12.2

Недокументированные функции могут (и это доказывает) изменяться без предупреждения.Использование их строго на свой страх и риск.

...