0

postgres C api 関数を使用して、クエリから列サイズを取得しようとしています。

CREATE TABLE char_length_test (c char(3), vc varchar(5), t text)

たとえば、次のクエリがあります。

SELECT c, vc, repeat(c, 1), t from char_length_test

正しい型を取得しますが、列のサイズを取得する方法がわかりません。と を使ってみましPQfsizePQgetlength

  • PQfsizeを返します-1。これは、列サイズが必要な間、postgres のドキュメントに従って可変サイズを意味します。
  • PQgetlength0サイズではありませんが、テーブルにはデータが含まれていないため、これは問題ありません。

、「vc」の長さ、および関数の大きな値を3取得cすることを期待しています5repeat(c, 1)t

正直なところ、私は に似た機能を期待していましたmysql_fetch_fields

4

1 に答える 1

0

PQfmodを探していると思います。

修飾子の値の解釈は型固有です。通常、精度またはサイズの制限を示します。値 -1 は、「利用可能な情報がない」ことを示すために使用されます。ほとんどのデータ型は修飾子を使用しません。その場合、値は常に -1 です。

于 2013-04-19T11:02:17.900 に答える