python 插入数据到mongodb却查询不到数据
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 插入数据到mongodb却查询不到数据相关的知识,希望对你有一定的参考价值。
最近开始学python ,希望大神帮助
pyyhon 代码
#-*-coding:utf8-*-import pymongoconnection = pymongo.MongoClient()tdb = connection.Jikexueyuanpost_info = tdb.testjike = 'name':u'极客', 'age':'5', 'skill': 'Python'god = 'name': u'玉皇大帝', 'age': 36000, 'skill': 'creatanything', 'other': u'王母娘娘不是他的老婆'godslaver = 'name': u'月老', 'age': 'unknown', 'other': u'他的老婆叫孟婆'post_info.user.insert(jike)
其中用mongovue 查看结果没有插入
看下程序是否报错,最好try catch 用logging exception把报错详细信息打出来
有没有提交
插入的数据有没有超过字段最大值
遇到问题--mongodb---python---pymongo通过_id查询不到数据
情况
pymongo通过_id查询不到数据
正常使用的pymongo查询语句如下:
id="600bcb89436877002d001eaa"
import pandas as pd
from pymongo import *
client = MongoClient(\'mongodb://root:password@mongodb.mydb.com:3717/mydb\')
db = client[\'mydb\']
db_collection = db[\'comment\']
results = []
for comment in db_collection.find("_id":id):
_id=comment.get("_id", None).__str__()
userId = comment.get("userId", None)
results.append((_id,userId))
df_comment = pd.DataFrame(results, columns=[\'_id\',\'userId\'])
df_comment.head(3)
但是这样查询 查不出数据来
db_collection为空
原因
mongodb中_id的类型是ObjectId,不是字符串,如果我们使用字符串作为查询的值,会对应不到相关的数据。
解决方案
把id字符串转换为 ObjectId后再进行查询。
主要使用的语句如下:
from bson import ObjectId
oid = ObjectId(id)
以上是关于python 插入数据到mongodb却查询不到数据的主要内容,如果未能解决你的问题,请参考以下文章
MongoDB中,Query查询,这条查询语句不知道为啥总是获取不到值。在VUE中使用find是完全可以的。求解?
遇到问题--mongodb---python---pymongo通过_id查询不到数据
遇到问题--mongodb---python---pymongo通过_id查询不到数据
遇到问题--mongodb---python---pymongo通过_id查询不到数据