[pgsql-jp: 36926] Re: libpqでPQprepareで準備済みのクエリプランの検出

Tatsuo Ishii ishii @ sraoss.co.jp
2006年 3月 25日 (土) 21:43:48 JST


石井です.

> 大垣です。
> 
> libpqのPQprepareで準備済みのクエリプランを最も効率良く検出する方法はどちらに
> なるでしょうか?
> 
> 1) PQexecPreparedで取りあえずクエリプランを実行してみてエラーになったらクエリプラン
> は未定義とする方法。

試しに実行してみる方法では,万が一実行して欲しくないクエリプランの場合,
まずくないでしょうか?

> 2) 空のクエリでPQprepareを実行してみてエラーになったらクエリプランが未定義とする方法。
                                                                      ~~~~~~定義済みの間違い?

> おそらく1の方がパーサなどが初期化されない分効率的と思いますがご存知の方、教
> えてください。他にもっと効率的にクエリプランが定義済みか検出する方法がある場
> 合もお願いします。

EXPLAIN EXECUTEでエラーにならなかったらそのクエリプランは在する,って
いうのでは如何でしょう?

ちなみに,8.2にはpg_prepared_queriesというviewがあって,prepared
statementのリストが取れます.
--
Tatsuo Ishii
SRA OSS, Inc. Japan



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