Search code examples
rmongodbrmongo

Rmongo query function giving error


I am trying to connect mongodb in R using Rmongo library.But query function giving me error.

> chn = mongoDbConnect("marketing_db", host = 'localhost', port = 27017)
> print(dbShowCollections(chn))
character(0)
> results = dbGetQuery(chn, marketing_data, {}, 0, 5)
Error in dbGetQuery(chn, marketing_data, { : 
  object 'marketing_data' not found
> results = dbGetQuery(chn, "marketing_data", {}, 0, 5)
Error in (function (classes, fdef, mtable)  : 
  unable to find an inherited method for function ‘dbGetQuery’ for signature ‘"RMongo", "character", "NULL", "numeric", "numeric"’
> results = dbGetQuery(chn, "marketing_data", query = {}, skip = 0, limit = 5)
Error in (function (classes, fdef, mtable)  : 
  unable to find an inherited method for function ‘dbGetQuery’ for signature ‘"RMongo", "character", "NULL", "numeric", "numeric"’

Where marketing_db is db and marketing_data is collection in my mongodb

Below is output from mongo console:

> show dbs
admin         0.000GB
config        0.000GB
local         0.000GB
marketing_db  0.001GB
myblogs       0.000GB
test          0.003GB
> use marketing_db
switched to db marketing_db
> show collections
marketing_data
> db.marketing_data.count()
7414
> db.marketing_data.find().pretty().limit(1)
{
        "_id" : ObjectId("5b1d65c6cc6e576297462cdc"),
        "custAge" : 55,
        "profession" : "admin.",
        "marital" : "single"
}

I am using R for windows 3.4.3 and MongoDB 3.6.5

Please help in resolving this error.


Solution

  • Try passing query json as a string:

    results = dbGetQuery(chn, "marketing_data", "{}", 0, 5)