Обсуждение: Relationship beween sequences (serial) and tables
Hi,
I use Postgres 7.4.5 on Linux
In many of my tables the primary key is bigserial for which sequences are automatcially generated. Through pg_catalog tables how can I find the relationship petween each table and its corresponding sequence ?
Thanks.
-Thusitha
Click here to donate to the Hurricane Katrina relief effort.
On Thu, Sep 08, 2005 at 01:03:26AM -0700, Thusitha Kodikara wrote:
> In many of my tables the primary key is bigserial for which
> sequences are automatcially generated. Through pg_catalog tables
> how can I find the relationship petween each table and its corresponding
> sequence ?
Depending on what information you're looking for, you might need
to query any of the following tables:
pg_attrdef
pg_attribute
pg_class
pg_constraint
pg_depend
pg_index
See also "Miscellaneous Functions" ("System Information Functions"
in 8.x) in the "Functions and Operators" chapter of the documentation.
It can also be useful to run "psql -E" or use "\set ECHO_HIDDEN"
in psql to show the SQL queries that psql makes for \d commands.
--
Michael Fuhr
On Thu, Sep 08, 2005 at 01:03:26AM -0700, Thusitha Kodikara wrote: > Hi, > > I use Postgres 7.4.5 on Linux > > In many of my tables the primary key is bigserial for which sequences are automatcially generated. Through pg_catalog tableshow can I find the relationship petween each table and its corresponding sequence ? If you install newsysviews (http://pgfoundry.org/projects/newsysviews/), the following query will give you all table columns that are using a sequence for their default value: select * from pg_user_table_columns where default_value like 'nextval(%'; -- Jim C. Nasby, Sr. Engineering Consultant jnasby@pervasive.com Pervasive Software http://pervasive.com work: 512-231-6117 vcard: http://jim.nasby.net/pervasive.vcf cell: 512-569-9461