問題タブ [libpqxx]
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.
c++ - Libpqxx を使用して Postgres に保存されているポリゴンのポイントにアクセスするにはどうすればよいですか?
postgres db に格納されているポリゴンのポイントを取得したいと考えています。db の内容は次のとおりです。
頂点列のタイプは Polygon です。
C++ 用の libpqxx ライブラリを使用しています。
頂点列のポイントを取得してアクセスしたいとします。C++ で次のステートメントを実行します。
申し訳ありませんが、libpqxx は初めてです。libpqxx がどのように機能するかはほぼ理解できましたが、Polygon 型に固執しています。実際には、Postgres にポリゴン用の単純なストレージが必要なだけですが、libpqxx を使用してポリゴンにアクセスする方法がわかりません。
postgresql - PostgreSQL サーバーを一覧表示する方法はありますか?
現在、クライアントを PostgreSQL サーバーに書き込んでいます。ローカル ネットワークで PostgreSQL サーバーを実行しているサーバーの詳細 (IP アドレスとポート番号) を一覧表示したい。libpq または libpqxx にいくつかのメソッドはありますか?
よろしく
デバラ・グッダ
c++ - MinGW で libpqxx をリンクできません
MSYS を使用して、libpq をコンパイルしました (postgres のコンパイルから)。次に libpqxx をコンパイルしました。ここで、libpqxx を使用するクライアントを作成したいと考えています。libpq は問題なく動作しているように見えました。また、libpqxx でコードをコンパイルできます。ただし、libpq クライアント アプリケーションのリンクは失敗します。
これが私のコードです:
リンクにたくさんのライブラリを追加しましたが、それが突然機能することを望んでいませんでした。これが私がこれまでに持っているものです:
-lws2_32 が「select@20」を与えるべきだったと思います。なぜリンカはとても高尚なのですか?
c++ - プリペアドステートメントを介して検索機能を実装するためのベストプラクティス
c++とlibpqxxを使用してSearch-Functionを実装しようとしています。しかし、次の問題があります。ユーザーは4つの異なる検索パターンを指定できます(それぞれオプション)。
- 日付から
- 日まで
- ドキュメントタイプ
- ドキュメントID
それらのそれぞれはオプションです。したがって、プリペアドステートメントを使用する場合は、2 ^ 4=16の異なるプリペアドステートメントが必要になります。まあ、それは可能ですが、私はこれを避けたいと思います。
例として、libpqxxのプリペアドステートメントは次のようになります。
したがって、私はそのような準備されたステートメントをどのようにつなぎ合わせるのかもわかりません。
私が考えていなかった他の「素敵な」方法はありますか?
g++ - g++ と libpqxx lib の問題
私は非常に単純な例を持っていますが、正しくビルドできません.次の引数を使用していました:
g++ -lpq -libpqxx -Wall -o "pg" "pg.cpp" (ディレクトリ: /home/user) /usr/lib/gcc/i586-suse-linux/4.5/../../../ ../i586-suse-linux/bin/ld: -lpq collect2 が見つかりません: ld は 1 つの終了ステータスを返しました
また
1 つの終了ステータスを返しました g++ -libpqxx -Wall -o "pg" "pg.cpp" (ディレクトリ: /home/user) /usr/lib/gcc/i586-suse-linux/4.5/../../. ./../i586-suse-linux/bin/ld: -libpqxx collect2 が見つかりません: ld
しかし、すべてにエラーがありました。libpqxx succ がインストールされました
@lisuse-home:~> libpqxx を見つける | grep /lib/ /usr/lib/libpqxx-3.1.so /usr/lib/libpqxx.la /usr/lib/libpqxx.so /usr/lib/pkgconfig/libpqxx.pc
c++ - Netbeansを使用してlibpqxxテストをコンパイルできません
データベースに接続してデータベース名を出力する非常に単純なプログラムをコンパイルしようとしています。コマンドラインでコンパイルすることはできますが、Netbeansでコンパイルすることはできません。Ubuntu10.04でNetbeansIDE6.9.1を使用しており、apt-getを使用してインストールされたg++4.4.3とlibpqxx2.6.9を使用しています。コードは次のとおりです。
以下を使用して正常にコンパイルできます。
Netbeansはこれで失敗します:
なぜこれが失敗しているのかについて誰かが洞察を提供できますか?私はしばらくの間C++から離れていたので、以前ほど問題が発生した場所を見つけるのにそれほど鋭敏ではありません。
postgresql - PQescapeLiteralが定義されていませんか?
これは、私の問題を説明するために考えることができる最も基本的なlibpqの例についてです。ここでの目標は、エスケープされた文字列を印刷することだけです。
私がコンパイルするとき:
またはでさえ:
エラーが発生します:
セクション31.3.4のpgsql9.0のマニュアルでPQescapeLiteralを見つけました。:SQLコマンドに含めるための文字列のエスケープ。私はyumのlibpqとlibpq-develの最新バージョンを持っているので、それが定義されているはずだと確信しています。
誰かが私を正しい方向に向けることができれば、私はそれをいただければ幸いです。
c++ - pqxxを使用したプログラムのコンパイルで問題が発生しました
非常に単純なプログラム(何もしないサンプル)をpqxxでコンパイルしようとしていますが、コンパイルできません。これが「プログラム」です。
$ cat xx.cpp
C++でコンパイルしようとして使用したコマンド:
返されたメッセージ:
私が好きなら:
戻り値:
考慮事項:
私は本当に他に何をすべきかわかりません、なぜなら:
ルイス
postgresql - postgres での viewpathing (それ以外の場合はグローバルに利用可能なテーブルのプライベート/個別バージョン)
特定の一連のプロセスからのすべてのクエリがプライベート ビューを通過する一方で、他の (潜在的に同時または単に後続の) プロセスが残るように、基本的な基本的な postgres データベースがインスタンス ローカライズされたプライベート ビューで覆われているテスト環境を作成したいと考えています。影響を受けません。
search_pathメカニズムを使用してこのようなことができると思いますが、それが透過的にできるかどうかは明らかではありません (たとえば、各アプリケーションが接続ごとに SQL セットアップのセットを実行する必要はありません)。たとえば、「このsearch_pathを使用する」という環境変数として設定し、その後開始するすべてのプロセスにそれを見て同じプライベートテーブルインスタンスを使用させることができるものはありますか?
問題がある場合、プロセスはすべて C++ アダプター libpqxx を経由してデータベースにアクセスします。
ありがとう、ジェフ
c++ - libpqxx および xcode4 (c++) でコンパイルできない
postgresql データベースに接続するために、C++ プロジェクトで libpqxx (3.1) を使用しようとしています。最新バージョンの xcode (xcode 4) を使用しています。
インストール (./configure、make、make install) を正しく行い、ヘッダー検索パスとライブラリ検索パスにライブラリを追加しました。
ヘッダー検索パス: /usr/local/include ライブラリ検索パス: /usr/local/lib
それで、
pqxx/cursor.hxx ファイルに次のエラーが表示されます。
'internal::sql_cursor' の初期化に一致するコンストラクターがありません
このファイルを編集する必要がありますか?
ご協力いただきありがとうございます。