|
|
su.dbms- SU.DBMS ---------------------------------------------------------------------- From : Konstantin Boyandin 2:5020/175.2 28 Jul 2002 11:43:38 To : Juriy Goloveshkin Subject : Re: PostgreSQL: --------------------------------------------------------------------------------
Приветствую, Juriy Goloveshkin!
>> Вопрос, видимо, простой: я использую SEQUENCE для создания новых
>> уникальных id (primary key). Вопрос: каким образом (при помощи какого
>> запроса) получить последнее назначенное значение? Т.е., если я только что
>> дал запрос типа
>> INSERT INTO mytable (primaryid, otherfield) VALUES(nextval('mysequence'),
>> 'Some data');
>> то как получить последнее назначенное значение для primaryid вновь
>> добавленной строки?
JG> FAQ, однако. SELECT currval('mysequence')
Спасибо, я читал документацию и пытался дать эту команду.
Ответ сервера:
ERROR: mysequence.currval is not yet defined in this session
Явно какая-то очень легко решаемая проблема, но как?
Если это важно: RedHat 7.3 + PostgreSQL 7.2.1
Я использую сейчас
SELECT last_value FROM mysequence
но насколько это правильно? Между двумя вызовами (INSERT, SELECT) могут
быть другие обращения к SEQUENCE, и значение, которое я получу, не будет
правильным в общем случае. Прошу подсказать решение...
Всего наилучшего,
Константин
Ралион | Шамтеран http://ralion.ru
--- ifmail v.2.15dev5
* Origin: FidoNet Online - http://www.fido-online.com (2:5020/175.2)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /su.dbms/330050e82aa0.html, оценка из 5, голосов 10
|