Search Postgresql Archives

Re: pg_catalog.pg_get_serial_sequence() returns NULL

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Jun 26, 2007, at 10:28 AM, Sergey Karin wrote:
I use PG 8.1.5

I execute in psql next comands:

create table t_table (gid serial, name varchar);

select pg_catalog.pg_get_serial_sequence('t_table', 'gid');
 pg_get_serial_sequence
------------------------
 public.t_table_gid_seq

create table t_table_1() inherits (t_table);

\d t_table_1
                             Table "public.t_table_1"
 column |       Type        |                     Модификаторы
---------+------------------- +------------------------------------------------------- gid | integer | not null default nextval ('t_table_gid_seq'::regclass)
 name    | character varying |
Inherit: t_table

select pg_catalog.pg_get_serial_sequence('t_table_1', 'gid');
 pg_get_serial_sequence
------------------------
<NULL>

The issue is that t_table_1.gid isn't actually a SERIAL column... it's an int that pulls a default value from the t_table_gid_seq sequence. Note that that sequence is the one defined for t_table.

In this case for right now you're stuck hard-coding the sequence name in, or referring to the parent table :(.

How I can get name of sequence used by gid column of partition table? And why for t_table_1 pg_get_serial_sequence() returns NULL? It returns NULL also if I create new sequence manually and use ALTER TABLE ALTER COLUMN <column> SET DEFAULT nextval (<my_new_sequence>::regclass).

In http://www.postgresql.org/docs/8.1/static/datatype.html#DATATYPE- SERIAL I can read that type SERIAL is equivalent to
CREATE SEQUENCE tablename_colname_seq;
CREATE TABLE tablename (
colname integer DEFAULT nextval('tablename_colname_seq') NOT NULL
);Thanks in advance

Sergey Karin


--
Jim Nasby                                            jim@xxxxxxxxx
EnterpriseDB      http://enterprisedb.com      512.569.9461 (cell)




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux