[pgsql-jp: 33199] Re: pgpool-1.2.3のreplication_strict

Tatsuo Ishii t-ishii @ sra.co.jp
2004年 6月 10日 (木) 23:40:14 JST


石井です.

> OIDが必要なのではなく、シリアル型のINSERT後の番号が欲しいだけなので
> INSETRT後のSELECTだけ。
> リアルのサーバに、(pgpoolを経由させないで)アクセスして
> 取得する事にしました。

であれば,currval()が使えますよ.これをINSERTの直後に呼び出せば,現在
のシーケンスの値が取れます.

test=# create table t1(i serial, j int);
NOTICE:  CREATE TABLE will create implicit sequence "t1_i_seq" for "serial" column "t1.i"
CREATE TABLE
test=# insert into t1(j) values(1);
INSERT 2379314 1
test=# select currval('t1_i_seq');
 currval 
---------
       1
(1 row)

test=# select * from t1;
 i | j 
---+---
 1 | 1
(1 row)
--
Tatsuo Ishii



pgsql-jp メーリングリストの案内