[PHP-users 16521]currval,nextvalのどちらを使うのが良いのでしょうか?

Kouichi Matsumoto matchori @ yahoo.co.jp
2003年 7月 6日 (日) 14:20:09 JST


松本です。

PostgreSQLのシーケンス値(同じ値)を、
2つのテーブルへINSERTして使いたいのですが、
http://ns1.php.gr.jp/pipermail/php-users/2001-October/003006.html
の以下nextval()で最初に取る方法と、INSERT後にcurrval()で取る方法と
どちらが良いのでしょうか?

$query = "SELECT nextval('$seq_name') AS next_id";
$query_id = pg_Exec($this->link_id, $query);
$res = pg_Fetch_Array($query_id, 0, PGSQL_ASSOC);
を実行して取得した値をinsertに利用します。

又、currval値が被らないように、INSERTするテーブルを
ロックする必要はあるのでしょうか?

///* Kouichi.Matsumoto */




PHP-users メーリングリストの案内