Обсуждение: using OID as primary key
Hi, are there any disadvantages of using OID as the primary key for any table? What about referencing external tuples using their OIDs? e. g.: CREATE TABLE thistable ... field NUMERIC REFERENCES OtherTable (oid) Which data type should I use to reference OIDs? Will I run into problems later if I do my things this way? Thanks, Markus
Markus Wagner wrote: > Hi, > > are there any disadvantages of using OID as the primary key for any > table? > What about referencing external tuples using their OIDs? > > e. g.: > CREATE TABLE thistable > ... > field NUMERIC REFERENCES OtherTable (oid) > > Which data type should I use to reference OIDs? > > Will I run into problems later if I do my things this way? Currently OID is not supported for references. Has to do with some checks done in the RI triggers, using SPI functions. We're thinking about a solution... Jan -- #======================================================================# # It's easier to get forgiveness for being wrong than for being right. # # Let's break this rule - forgive me. # #================================================== JanWieck@Yahoo.com #
Thus spake Jan Wieck > > are there any disadvantages of using OID as the primary key for any > > table? > > What about referencing external tuples using their OIDs? > > Currently OID is not supported for references. Has to do with > some checks done in the RI triggers, using SPI functions. > We're thinking about a solution... Also, don't forget about the dump/restore issue. You have to remember to dump OIDs with "-o" or else all your references will be trashed. <OPINION> Personally I would avoid it. Adding a serial type almost gives you the same thing anyway. OIDs are useful in system tables and temporarily in programs when dealing with tables without primary keys. </OPINION> -- D'Arcy J.M. Cain <darcy@{druid|vex}.net> | Democracy is three wolves http://www.druid.net/darcy/ | and a sheep voting on +1 416 425 1212 (DoD#0082) (eNTP) | what's for dinner.