| От | Tom Lane |
|---|---|
| Тема | Re: Downgrade database and problem with sequences |
| Дата | |
| Msg-id | 7269.1229695416@sss.pgh.pa.us обсуждение исходный текст |
| Ответ на | Downgrade database and problem with sequences ("Sebastian Rychter" <srychter@anvet.com.ar>) |
| Список | pgsql-sql |
"Sebastian Rychter" <srychter@anvet.com.ar> writes:
> I am currently using postgresql 8.3 and whenever I want to get the last
> inserted ID use :
> Select currval(pg_get_serial_sequence(table, field))
> Then, I had to downgrade a database for certain customer to use postgresql
> 8.1, and when I execute that same function I found that
> pg_get_serial_sequence returns nothing.
Probably because the column wasn't actually declared SERIAL to 8.1.
I imagine you ignored the failure of the ALTER SEQUENCE OWNED BY
command in the 8.3 dump, but that is exactly what the missing piece
is here. 8.1 did not have an explicit OWNED BY command, and the only
way to make the right dependency magic happen was to use the SERIAL
keyword while creating the table.
regards, tom lane
В списке pgsql-sql по дате отправления:
Сайт использует файлы cookie для корректной работы и повышения удобства. Нажимая кнопку «Принять» или продолжая пользоваться сайтом, вы соглашаетесь на их использование в соответствии с Политикой в отношении обработки cookie ООО «ППГ», в том числе на передачу данных из файлов cookie сторонним статистическим и рекламным службам. Вы можете управлять настройками cookie через параметры вашего браузера