問題タブ [mongo-cxx-driver]
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++ - BSONオブジェクトのOIDを16進文字列として取得するにはどうすればよいですか?
オブジェクトのオブジェクトIDを文字列mongo-cxx
に変換しようとしているドライバーを使用していますBSON
には有効なデータがあると確信してBSONObj
いますが、次のエラーが発生します。
BSONElement:不正なタイプ#somenumber
c++ - c++ドライバーを使用してmongodb配列をベクターに保存する方法は?
たとえば、シェルでこれを行うと
arr
次に、C++ プログラムに参加したいと思います。
BSONObjを取得name
した後、取得できます
はp
BSON オブジェクトです。
しかし、配列から要素を取得して std::vector に保存する正しい方法は何ですか?
編集:
さらに調査した後、BSONElement doxygenのドキュメントを見つけてこれを作成しました。
しかし、それが正しい方法であるかどうかはまだわかりません。
c++ - C ++ドライバーを使用してスパースインデックスを作成するMongoDb
MongoDb (2.2) C++ ドライバーを使用してスパースインデックスを作成する方法はありますか?
ensureIndex
関数がこの引数を受け付けないようです。MongoDb ドキュメントから:
c++ - C++ で mongo::BSONObj を正しく変更する
データストレージにmongodbを使用するソフトウェアを作成しました。クエリがデータを返した後、BSONObj はさまざまな場所で使用されます。
現時点では、クエリによって返される BSONObj の C++ 側の変更の可能性を追加する必要があります。後の部分はかなり大きいので、クエリの部分しか変更できませんが、BSONObj と BSONElement の参照を見ると、編集のたびに再構築せずに BSONObj を編集する正しい方法がわかりません。
変更コードは次のようになります。
私が調べたオプションの 1 つは、シングルを作成してBSONObjBuilder
それを変更することでしたが、オブジェクトをクエリするオプションは提供されず、ドキュメントには既存のフィールドとappend()
.
c++ - C++ でネストされた配列を使用して MONGO レコードを処理する
MONGO C++ API を使用して、次のような一連のレコードを処理しようとしています...「エントリ」配列の行数は可変です: 13 または 7 です。
UTCTime と SvId に基づいてコレクションをクエリします...レコードを取得したときに、それらすべてをステップスルーする方法がわかりません...
通常、カーソルを取得し、返されたレコードのセットを "next()" でループ処理するだけですが、7 または 13 のエントリを持つ "Entries" フィールドができました。これらの各アイテムにアクセスするにはどうすればよいですか? それらをループするために使用できる何らかの「サブカーソル」が必要だと思います。
API と例を調べていますが、ネストされた配列についてはあまりありません。
ありがとう、
リック
c++ - mongo-c-driver または mongo-cxx-driver でドキュメントをアップサートした後に `_id` を取得する方法は?
_id
mongo-c-driver または mongo-cxx-driver でドキュメントをアップサートした後に取得する方法は?
次のコード スニペットは mongo-shell からのもの_id
で、 の最後の行のフィールドを示していますWriteResult
。
c++ - compare_numbers.h:83: 警告: 引数 2 の 'double' を 'int mongo::compareLongs(long long int, long long int)' に渡します
RHEL 5 で mongo c++ ドライバーをコンパイルしたいのですが、使用するscons
とエラーが発生します:
これは何ですか ?
mongodb - C++ ドライバーで認証された接続を使用する mongodb 接続プール
C++ ドライバーの接続プールが認証された接続では機能しないことを読みました ( 2013 年末の記事)。これは(まだ)本当ですか?
c++ - cmake 経由で boost-thread と boost-regex をリンクする場合の SIGSEGV (セグメンテーション違反)
mongo-cxx-driver の例をコンパイルして実行してみます。Boost-system、boost-thread、boost-regex をリンクする必要があります。コマンドラインでコンパイルすると:
g++ simple_client_demo.cpp -I/home/ssi/mongo-client-install/include -L/home/ssi/mongo-client-install/lib -lmongoclient -lboost_system -lboost_thread -lboost_regex
すべては順調です。しかし、Cmake でコンパイルしようとすると、Signal: SIGSEGV (Segmentation fault)
in /usr/include /c++/4.8/functional(_M_manager(_M_functor, _M_functor, __destroy_functor);
問題がある場合は 2030 行) が表示されます。
Boostをリンクする私のCMakeList.txtの一部:
ldd a.out
g++
(コマンドからコンパイル):
ldd test_mongo_c_driver
(cmake からコンパイル):
これは私の simple_client_demo.cpp です:
の出力make VERBOSE=1
: