[pgsql-jp: 31357] libpq.dll の PQfmod と PQfsize

Value 平野 hirano @ valuenet.co.jp
2003年 10月 29日 (水) 11:55:09 JST


平野と申します。 PostgreSQL 7.3.3

Delphi7Ent で libpq.dllを使用してクライアントアプリ
を開発をしています。

libpq.dll にある、PQfsize と PQfmod 関数について質問
です。

日本語訳のマニュアル(7.3.3)によると、

PQfmod :フィールドのデータ型固有の修飾データを返します。
PQfsize :フィールドのサイズをバイト数で返します。

という旨書いてあります。

試しに、
create table (test char(1));

として、このフィールドを両方の関数に渡すと、

PQfmodの戻り  :5
PQfsizeの戻り :-1
が帰ってきました。また、同じく

create table (test char(2));

として、このフィールドを両方の関数に渡すと、
PQfmodの戻り  :6
PQfsizeの戻り :-1

が帰ってきました。PQfmodの戻り値は 4+項目サイズになっ
ているように思うのですが、これは何故でしょうか?
私は PQfmodは、そのまま項目サイズ(create table時に
指定した定義長)が帰ってくると思っていたのですが・・・。
PQfsizeもこの場合なぜ-1が帰るのかもよく理解できません。

ちなみに
create table (test integer); だと、
PQfmodの戻り  :-1
PQfsizeの戻り :4
となり、こちらは納得できます。

御存知の方いらっしゃいましたらお願い致します。、

0--------1---------2---------3---------4---------5
株式会社バリューソフトウエア
平野 源
hirano @ valuenet.co.jp
0--------1---------2---------3---------4---------5





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