Вместо использования класса DBClientConnection, я использую класс DBClientBase.Я успешно могу подключиться к БД, но не могу вставить документ.
Вот как выглядит мой код:
DBClientBase *conn = NULL;
string err_msg;
ConnectionString cs = ConnectionString::parse(connString, err_msg);
if (!cs.isValid()) {
throw "bad: " + err_msg;
}
try {
conn = cs.connect(err_msg);
} catch (DBException &e) {
cout << "caught " << err_msg << endl;
return 1;
}
if (!conn){
cout<<"Unable to connect to DB"<<endl;
return 1;
}
BSONObjBuilder b;
b.append("name", "Joe");
b.append("age", 33);
BSONObj p = b.obj();
conn.insert("db.coll",p,0);
компилятор выдает ошибку request for member ‘insert’ in ‘conn’, which is of non-class type ‘mongo::DBClientBase*’
Где-нибудь есть пример использования класса DBClientBase для вставки документов?
Кроме того, я не могу найти, как использовать флаги в virtual void insert (const string &ns, BSONObj obj, int flags=0)
, как упоминалось здесь