Thanks Greg. That does help me some, however, I am stuck with this database (I have inherited) - it has over a hundred tables, and while I may look into converting it at some point, it is just unfeasible at this junction. So where can I look to find the hard way? :)
HG "Greg Patnude" <[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED] > That's the hard way.... > > You'd be better off redefining your table structures so that postgreSQL > handles the primary keys automatically... > > CREATE TABLE test ( > > id integer primary key not null default nextval('test_seq'), > log varchar(32) NOT NULL, > message text > > ) WITH OIDS; > > Using this type of table def will automatically create the sequence for > you -- and always ge thte next value when you do an insert -- ensuring that > you dont have duplicate... > > so you would: > > INSERT INTO test ('log', 'message'); > > then > > SELECT * FROM test; > > would give you > > id, log and message. > > > > -- > Greg Patnude / The Digital Demention > 2916 East Upper Hayden Lake Road > Hayden Lake, ID 83835 > (208) 762-0762 > > "Humble Geek" <[EMAIL PROTECTED]> wrote in message > news:[EMAIL PROTECTED] > > Hi all. Quick and perhaps silly question, but... > > > > I am using Pg 7.3. I am writing a function using pgplsql. This function > will > > perform multiple inserts. Let's say two of the inserts are as follows: > > > > -- id is primary key > > insert into users (id, username) values (nextval('someSeq'),'somename'); > > > > -- id is also a PK > > insert into log (id, uid, message) values > (nextval('someOtherSeq'),XXX,'New > > Account'); > > > > Assume XXX is the id from the first insert. How do I get that number? Not > > currval('someSeq') - 'cause someone else may have performed an insert - > but > > the id for that specific insert. > > > > Thanks, > > > > HG > > > > PS: Sorry for the cross-post... > > > > > > ---------------------------(end of broadcast)--------------------------- TIP 6: Have you searched our list archives? http://archives.postgresql.org