問題タブ [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++ - postgresqlのc ++でpqxxを使用してSQLクエリでINを実行するには?
in forIN
を使用して SQL クエリで実行する方法は? IDがあり、学生テーブルのすべての行を更新する必要があります (新しい値に設定するため)。ループを避けたい、新しい値 ( _id)ステートメントで教員を挿入したときに取得します。pqxx を使用し て反復可能な構造を渡したり、クエリを作成したりすることはまったく可能ですか?pqxx
c++
postgresql
vector<long>
faculty_id
faculty
prepared
INSERT
prepared
IN
$1 更新する必要がある行の ID のベクトルが好きです
postgresql - pqxx byteA と binaryString の奇妙なデータの読み取り
PostGreSQL データベースといくつかの暗号化されたデータに問題があります。ブローフィッシュ アルゴリズムを使用して文字列を暗号化し、代わりにバイナリ データを取得します。このバイナリには、\0 およびその他のスケープ シーケンスを含めることができます。
私はこの方法でデータを保存します:
それから私はそれを次のように読みます:
問題は、データが完全に返される場合もありますが、データが正しく返されて後でゴミが残る場合もあります。この奇妙なデータが暗号化された文字列に追加されないように、書き込み/読み取りをどの方向に変更する必要があるかについての手がかりはありますか?
私が行った別の試みは、この方法でデータを保存することです:
同じ結果で。
編集:要求に応じて、いくつかのロギング調査を行いました:私はこの値を研究しています:
em をとりわけ
興味深いのは、同じ変数を再度作成して $5 と $6 を使用して検索し、正しい行を取得したことです。
しかし、前に示した文字列を印刷しようとすると:
これは私が得るものです(3回の試行):
試行を重ねるごとにすべてが変化し続けます。私は最終的に正しい "" を最初の属性に入れることができます。最初の試行で正しく表示される属性は、常に正しく表示されます。
c++ - `pqxx::result::begin() const' への未定義の参照
CentOS 6.3 で libpqxx ライブラリを使用して、データベースから複数の行を選択する単純なコードをコンパイルしようとしています。
次のリンカ エラーが発生します。
ASP:/root/test/libpqxx_folder$ g++ -g libpqxx_select_from_table.cpp -L/usr/lib64 -lpqxx -lpq -o select libpqxx_select_from_table.cpp: 関数 'int main(int, char**)': libpqxx_select_from_table.cpp: 21: 警告: 文字列定数から 'char*' への非推奨の変換 /tmp/cc0bFRAY.o: 関数
main': /root/test/libpqxx_folder/libpqxx_select_from_table.cpp:30: undefined reference to
pqxx::result::begin() 内 const' /root/test/libpqxx_folder/libpqxx_select_from_table.cpp:31: への未定義の参照pqxx::tuple::operator[](int) const' /root/test/libpqxx_folder/libpqxx_select_from_table.cpp:32: undefined reference to
pqxx::tuple::operator const' /root/test/libpqxx_folder/libpqxx_select_from_table.cpp:33:pqxx::tuple::operator[](int) const' /root/test/libpqxx_folder/libpqxx_select_from_table.cpp:34: undefined reference to
pqxx::tuple::operator const' /root/test/libpqxx_folder/libpqxx_select_from_table.cpp:35 への未定義参照pqxx::tuple::operator[](int) const' /tmp/cc0bFRAY.o: In function
bool pqxx::field::to, std::allocator > >(std::basic_string, std::allocator >&) const': /usr/local/include/pqxx/field.hxx:190:pqxx::field::c_str() const' /usr/local/include/pqxx/field.hxx:191: undefined reference to
pqxxへの未定義参照::field::is_null() const' /usr/local/include/pqxx/field.hxx:192:pqxx::field::size() const' /tmp/cc0bFRAY.o: In function
const_result_iterator への未定義参照': /usr/local/include/pqxx/result.hxx:334:pqxx::tuple::tuple(pqxx::result const*, unsigned long)' /tmp/cc0bFRAY.o: In function
boolへの未定義参照pqxx::field::to(int&) const': /usr/local/include/pqxx/field.hxx:119:pqxx::field::c_str() const' /usr/local/include/pqxx/field.hxx:120: undefined reference to
pqxx::field::is_null() への未定義参照 const' /tmp/cc0bFRAY.o: In functionbool pqxx::field::to<float>(float&) const': /usr/local/include/pqxx/field.hxx:119: undefined reference to
pqxx::field::c_str() const' /usr/local/include/pqxx/field.hxx:120: `pqxx::field::is_null() const' collect2 への未定義の参照: ld は 1 つの終了ステータスを返しました
よろしくお願いします。
c++ - C++ 文字列をプログラムで文字列リテラルにエンコードする
一部のユーザーからデータベースに入力されたテキストを永続化しようとしていますが、これらの値をどのようにエンコードしますか? 私は C/C++ の初心者で、google fu のスキルに問題があります..
私はlibpqxxを使用していて、次のようなことをしようとしています
しかし、userInputが次のような場合
私の挿入は失敗します。ご協力いただきありがとうございます。
c++ - C ++ postgiの準備済みステートメントの失敗、無効なジオメトリ
libpqxx と準備済みステートメントを使用しています。プログラムで挿入しようとすると、「無効なジオメトリ」というエラーで失敗しますが、SQL プロンプトから同じ挿入を行うことができます。準備ステートメント呼び出しで ' をエスケープしようとしましたが、同じエラーが発生しました
私も試しました
出力:
SQLプロンプトに入ると、これを実行でき、挿入されます
c++ - pqxx からオーバーロードされたリモート プロシージャを呼び出す方法
pqxxからオーバーロードされたリモートプロシージャを呼び出す方法は?
手順例:
C++ コード:
C++コードから「foo(num integer)」を呼び出すにはどうすればよいですか? 例では、"ans" 内の "int" という望ましい結果が得られます。
psql.exe の出力:
SELECT foo(1); 「int」を返します
SELECT foo("テスト"); 「テキスト」を返します
前もって感謝します。
ubuntu - 64 ビット システムで libpqxx を使用して PHP-CPP 拡張機能をコンパイルできない
64 ビット Ubuntu に移行しましたが、拡張機能をコンパイルできません。32ビットでは問題なく動作します。誰かが何が問題なのか知っていますか? ありがとうございました。このエラーレポートを受け取りました。
c++ - pqxx::pipeline は準備済みステートメントをサポートしていますか
内部でプリペアドステートメント(パラメータ化されたクエリ)を実行できますか?次pqxx::pipeline
のようなプレーンSQLステートメントを挿入できます:
SELECT * FROM table
しかし、以下のようなことはできますか
ありがとう