Неожиданное поведение:
Я обнаружил странное поведение последовательностей Oracle с 11g (работает с 10g):
CREATE SEQUENCE test_sequence START WITH 1;
CREATE TABLE test_table ( val INT );
INSERT INTO test_table VALUES ( test_sequence.NEXTVAL );
Хотя последовательность начинается с 1 , первое значение вставлено 2 :
SELECT * FROM test_table;
VAL
----------
2
Ожидаемое поведение:
Выбор NEXTVAL
без вставки работает должным образом:
CREATE SEQUENCE test_sequence_2 START WITH 1;
SELECT test_sequence_2.NEXTVAL FROM dual
NEXTVAL
----------
1
Вопрос:
Может ли кто-нибудь воспроизвести это с помощью Oracle 11g? Это известная проблема?
Я использую
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64-разрядная производственная версия
.