powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Получение текущего значения сиквенса
3 сообщений из 3, страница 1 из 1
Получение текущего значения сиквенса
    #32152785
Zh0rzh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Имеется сиквенс созданный следующим запросом
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
CREATE SEQUENCE name_seq
  INCREMENT BY  1 
  START WITH  1 
  MINVALUE  1 
  MAXVALUE  999999999999999999999999999 
  NOCYCLE
  NOORDER
  NOCACHE


Использую конструкцию name_seq.nextval для вставки в поле являющееся идентификатором. Как мне получить только что вставленное значение?
Возможно нужно брать текущее значение сиквенса после вставки?

Извините, если сморозил глупость.
...
Рейтинг: 0 / 0
Получение текущего значения сиквенса
    #32152789
curval
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
seq_seqName.currval
...
Рейтинг: 0 / 0
Получение текущего значения сиквенса
    #32152791
Divan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть одна хитрость!
Если ты в своем сеансе не переключишь значение сиквенса на NEXTVAL то ты не получишь CURRVAL

1. select sec.nextval from dual;

2 select sec.currval from dual;

И еще одна маленькая хитрость.
Если при создании последовательности ты укажешь параметр NOCACHE, то следующее значение последовательности ты можешь увидеть сделав запрос к таблице user_sequences, без всякого переключения NEXTVAL.
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Получение текущего значения сиквенса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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