問題タブ [libpq]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
7154 参照

postgresql - 永続的な接続のために大量のメモリを消費する PostgreSQL

Windows で PostgreSQL 8.3 を使用する C++ アプリケーションがあります。libpq インターフェイスを使用します。

各スレッドが接続を開き、PQFinish なしで使用し続けるマルチスレッド アプリがあります。

各クエリ (特に SELECT ステートメント) で、postgres.exe のメモリ消費量が増加することに気付きました。1.3 GB まで上がります。最終的に、postgres.exe がクラッシュし、プログラムに新しい接続を強制的に作成させます。

以前にこの問題を経験した人はいますか?

編集: shared_buffer は現在、conf で 128MB に設定されています。ファイル。

EDIT2: 現在実施している回避策は、すべてのトランザクションに対して PQfinish を呼び出すことです。ただし、毎回接続を確立するのは非常に遅いため、処理が少し遅くなります。

0 投票する
1 に答える
459 参照

c - libpqは整数をバイナリとして送信します

私は定期的にデータベースに数字を挿入しているlibpqプログラムを持っています。これらの数値は、かなり大きくなると予想されますが、uint64_t型に格納されます。整数をバイナリとしてlibpqに送信したいのですが、Postgresはその符号なしを認識できません。Postgresまたはlibpqで符号なし整数を指定する方法はありますか?

0 投票する
3 に答える
2324 参照

c - 整数をバイナリとして送信するときにPostgreSQLlibpq「整数が範囲外です」エラー

次のやや単純なコードを使用して、Postgresテーブルにいくつかの整数を挿入しようとしています。

次の結果が得られます。

int64_tは、どのプラットフォームでも常に8バイト整数に収まると確信しています。私は何が間違っているのですか?

0 投票する
1 に答える
802 参照

postgresql - PostgreSQL サーバーを一覧表示する方法はありますか?

現在、クライアントを PostgreSQL サーバーに書き込んでいます。ローカル ネットワークで PostgreSQL サーバーを実行しているサーバーの詳細 (IP アドレスとポート番号) を一覧表示したい。libpq または libpqxx にいくつかのメソッドはありますか?

よろしく
デバラ・グッダ

0 投票する
3 に答える
5557 参照

xcode - Libpqを使用してiPhoneアプリをPostgreSQLに接続する

libpqを使用してPostgreSQL8.4データベースに接続するiPhone用のアプリケーションを作成する必要があります。問題は、libpqにリンクしてコンパイルする単純なiPhoneを入手できないことです。ただし、通常のMacデスクトップアプリと同等のアプリケーションを入手して、問題なくコンパイルしてPostgreSQLに接続することができます。SnowLeopardで実行されているXcode3.2を使用しています。

私はarmとx86_84の両方のlibpqを構築しています。アームビルドは実際のiPhone用であり、x86_64はiPhoneシミュレーターが使用するためのものです。次に、両方のファイルを含むファットバイナリを作成し、libpqという名前のファイルを作成します。このファイルは私が通常のMacアプリで使用しているファイルであり、正常に動作し、iPhoneアプリをビルドしようとすると問題が発生します。

libpqをビルドするときのビルドスクリプトは次のとおりです。

Xcode内からiPhoneアプリをコンパイルしようとしたときのビルドログは次のとおりです。

他の誰かが助けることができるこれに遭遇しますか?

StartShip3000に感謝します

0 投票する
1 に答える
96 参照

c - ランダムに消える構造体

libpq を使用して PostgreSQL とやり取りするための Objective-C クラスを作成しました。ほとんどの場合は機能しますが、小さな問題が 1 つあります。接続がランダムに消えるようです。

このクラスは、ウィンドウが開いたときに接続を開き、ウィンドウが閉じる前にその接続を閉じるように設定されています。ウィンドウの初期化コードで接続を開き、通知をリッスンして、PQfinnish() で接続を閉じることができるようにします。

そのウィンドウを開くと、必要な数のクエリを実行できます。しかし、それを閉じて再度開くと、EXC_BAD_ACCESS エラーが発生します。エラーは libpq 内にあるようですが、何が間違っているのかわかりません。従うべき例がないため、パターンに従うのが少し難しくなります。

接続オブジェクトに問題があるように思われますが、すべての診断関数が正しい値を返しているように見えるため、正確にはわかりません。

Postgresql 8.0、最新の OS X、最新の Xcode、および 10.5 をターゲットとするプロジェクトで実行

0 投票する
1 に答える
612 参照

c - PostgreSQL通知処理

私はPostgreSQLと通信することを想定したCアプリケーションに取り組んでいます。今のところ、サーバーから送信された通知と警告を処理する必要がありますが、それを機能させる方法がわかりません。

(非常に不明確な)ドキュメントには、通知の受信者としてメソッドを設定するためにPQsetNoticeReceiverを使用する必要があると記載されています。デフォルトの受信者は通知をPQnoticeProcessorに転送するだけで、これはstderrに出力されます。

このようにメソッドを定義しました

起動時にデフォルトの通知レシーバーとして設定しているので、

私のメソッドの実装では、いくつかのランダムな文字を画面に出力しているだけですが、呼び出されません。ステップバイステップのデバッグは、デフォルトの通知レシーバーとして設定されているが、呼び出されていないことを示しています。

何か案は?

0 投票する
2 に答える
307 参照

iphone - libpq を強制的に 10.5 でコンパイルする

後でシミュレーターで使用するために、libpq を 10.5 でコンパイルする必要があります。

デバイスで libpq を問題なく使用できます。

私はこれを強制しています:

しかし、私はエラーが発生しています:

このライブラリは MacOSX10.5 フォルダには存在しません。私のハード ドライブ全体にも存在しません。

ありがとう、

メートル。

0 投票する
1 に答える
2504 参照

c - libpq(PostgreSQL)を使用してPGresultをカスタムデータ型に変換する方法

Cのlibpqライブラリを使用してPostgreSQLデータベースにアクセスしています。したがって、res = PQexec(conn、 "SELECT point FROM test_point3d");を実行すると 取得したPGresultをカスタムデータ型に変換する方法がわかりません。

PQgetValue関数を使用できることはわかっていますが、返される文字列をカスタムデータ型に変換する方法がわかりません。

0 投票する
3 に答える
5788 参照

c++ - PostgreSQL の libpq: ARRAY[] データのバイナリ転送のエンコーディング?

何時間ものドキュメント/ボード/メーリングリストの後、私はあなたに尋ねるかもしれませんPQexecParams(.).

単純な変数は、ビッグ エンディアン順になっています。

このように、double、int なども ...

しかし、ARRAY はどうですか?

ARRAY データを PostgreSQL のバイナリ形式で転送する実際の例はありますか? のコードbackend/utils/adt/はあまり役に立ちません (ただし、ARRAYTYPE があることはわかっていますが、それらの使用方法はわかりません) :-(

char* to_PQbin(float [] input, int length)渡す関数が必要なだけですparamValues[.]...

どうもありがとう、テバス

PS: 単純な変数 ( my ではなくhtobe32(.)) を変換する推奨される方法は何ですか?