Re: OID Usage
От | Michael Fuhr |
---|---|
Тема | Re: OID Usage |
Дата | |
Msg-id | 20050114101508.GA98256@winnie.fuhr.org обсуждение исходный текст |
Ответ на | Re: OID Usage (Christian Kratzer <ck-lists@cksoft.de>) |
Ответы |
Re: OID Usage
|
Список | pgsql-general |
On Fri, Jan 14, 2005 at 10:32:18AM +0100, Christian Kratzer wrote: > $query = sprintf("SELECT currval('%s_%s_seq') AS > id",$this->table,$this->id_column); PostgreSQL 8.0 will have a pg_get_serial_sequence() function that returns the sequence name for a particular column so you don't have to construct it. This is useful when a table or column has been renamed, in which case the above will probably break. CREATE TABLE foo (fooid serial); ALTER TABLE foo RENAME TO bar; ALTER TABLE bar RENAME fooid TO barid; \d bar Table "public.bar" Column | Type | Modifiers --------+---------+-------------------------------------------------------- barid | integer | not null default nextval('public.foo_fooid_seq'::text) SELECT pg_get_serial_sequence('bar', 'barid'); pg_get_serial_sequence ------------------------ public.foo_fooid_seq (1 row) INSERT INTO bar VALUES (DEFAULT); SELECT currval(pg_get_serial_sequence('bar', 'barid')); currval --------- 1 (1 row) -- Michael Fuhr http://www.fuhr.org/~mfuhr/
В списке pgsql-general по дате отправления: