Am Donnerstag, den 09.06.2005, 16:30 +0200 schrieb GIROIRE, Nicolas (COFRAMI): > Hi, > > I try to deploy an Application with Oracle Database to a solution with postgresql. > the Oracle system exists and we use a request which return an int in a variable nb by "returning nb_lock into nb" > > UPDATE xdb_ancestors_lock SET nb_lock=nb_lock+1 WHERE doc_id=? AND ele_id=? returning nb_lock INTO nb; > > I'd like to know if there is equivalent solution under postgresql or if i'm obliged to do a select before my update. > > Best regards, > > Nico > Looks like you really want: UPDATE xdb_ancestors_lock SET nb_lock=nextval('nb_lock_sequence') WHERE doc_id=? AND ele_id=?; SELECT currval('nb_lock_sequence'); if you created a sequence and want assign just another free key. If not, you need SELECT ... FOR UPDATE instead. -- Tino Wildenhain <tino@xxxxxxxxxxxxx> ---------------------------(end of broadcast)--------------------------- TIP 8: explain analyze is your friend