pymongo:insert_one() 是 运行 但没有向 mongodb 数据库添加任何内容?
pymongo: insert_one() is running but isn't adding anything to mongodb database?
我正在尝试使用 PyCharm 将 .txt 文件上传到 mongodb 数据库 collection,但是 collection 中没有任何内容?这是我目前正在使用的脚本:
from pymongo import MongoClient
client = MongoClient()
db = client.memorizer_data # use a database called "memorizer_data"
collection = db.english # and inside that DB, a collection called "english"
with open('7_1_1.txt', 'r') as f:
text = f.read() # read the txt file
name = '7_1_1.txt'
# build a document to be inserted
text_file_doc = {"file_name": name, "contents": text}
# insert the contents into the "file" collection
collection.insert_one(text_file_doc)
PyCharm 顺利通过脚本,我也试过打印 acknowledged 属性只是为了看看会发生什么:
result = collection.insert_one(text_file_doc)
print(result.acknowledged)
这给了我 True
。我不确定我是否真的连接到我的数据库,所以我尝试了 db.list_collection_names()
并且我的 collection 'english' 在列表中,据我所知我正在连接是吗?
我是 MongoDB 的新手,所以我意识到我可能做错了事情。目前我只是想在将我的项目使用的所有内容上传到数据库之前让脚本为单个 .txt 文件工作。
是什么让您认为 collection 中什么都没有?两种检查方式;
在您的 pymongo 代码中,添加最后一行调试:
print(collection.find_one())
或者,在 mongodb shell:
use memorizer_data
db.english.findOne()
我正在尝试使用 PyCharm 将 .txt 文件上传到 mongodb 数据库 collection,但是 collection 中没有任何内容?这是我目前正在使用的脚本:
from pymongo import MongoClient
client = MongoClient()
db = client.memorizer_data # use a database called "memorizer_data"
collection = db.english # and inside that DB, a collection called "english"
with open('7_1_1.txt', 'r') as f:
text = f.read() # read the txt file
name = '7_1_1.txt'
# build a document to be inserted
text_file_doc = {"file_name": name, "contents": text}
# insert the contents into the "file" collection
collection.insert_one(text_file_doc)
PyCharm 顺利通过脚本,我也试过打印 acknowledged 属性只是为了看看会发生什么:
result = collection.insert_one(text_file_doc)
print(result.acknowledged)
这给了我 True
。我不确定我是否真的连接到我的数据库,所以我尝试了 db.list_collection_names()
并且我的 collection 'english' 在列表中,据我所知我正在连接是吗?
我是 MongoDB 的新手,所以我意识到我可能做错了事情。目前我只是想在将我的项目使用的所有内容上传到数据库之前让脚本为单个 .txt 文件工作。
是什么让您认为 collection 中什么都没有?两种检查方式;
在您的 pymongo 代码中,添加最后一行调试:
print(collection.find_one())
或者,在 mongodb shell:
use memorizer_data
db.english.findOne()