On 6 May 2002 at 10:51, Joel Burton wrote: > > But the very idea of inserting the value and then retriving the sequence > > number sounds fishy to me. Why not get the sequence number first and than > > insert using that seqnce number (more on the flash tutorial ).
That's pretty standard in a number of database applications (i.e. not just PostgreSQL situations). > Hmmm... does nextval() 'hold' a sequence number for this backend? > Otherwise, the risk would be that you request a value, and someone else has > beat you to it before you insert it. I use nextval all the time. In fact: fp2migration=# \d users Column | Type | Modifiers ------------+--------------------------+-------------------------- id | integer | not null default nextval('users_id_seq'::text) What's wrong this this? Nobody is going to "beat me to it". > In any event, inserting then using currval() is the standard practice > around here, and it works great. Nothing fishy at all here, nothing to see, > move on. Why is that "less risk"? -- Dan Langille The FreeBSD Diary - http://freebsddiary.org/ - practical examples ---------------------------(end of broadcast)--------------------------- TIP 6: Have you searched our list archives? http://archives.postgresql.org