在MongoDB中,可以通过以下3种方法插入数据:
1. 使用insertOne()方法插入一条数据:
import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["customers"] mydict = { "name": "John", "age": 50 } x = mycol.insert_one(mydict)
2. 使用insertMany()方法插入多条数据:
mylist = [ { "name": "Amy", "age": 12 }, { "name": "Michael", "age": 35 } ] x = mycol.insert_many(mylist)
3. 使用db.collection.insert()方法:
mydb.customers.insert({ "name": "Peter", "age": 30 })
这3种方法的区别在于:
– insertOne() inserting a single document
– insertMany() inserting multiple documents
– db.collection.insert() legacy method to insert a single document所以根据需要插入一条或多条数据,可以选择使用insertOne(),insertMany()或db.collection.insert()方法。
需要注意的是:- 如果指定的_id值已存在,插入会失败。如果未指定_id,MongoDB默认会为每条数据生成ObjectId。- 在同一个client下,insertOne(),insertMany()和db.collection.insert()方法是线程安全的。但在多个客户端下同时插入相同集合则不是线程安全的。
– insertMany()可以批量插入,如果部分数据插入失败,操作不会回滚,成功插入的数据不会回滚。
© 版权声明
本文刊载的所有内容,包括文字、图片、音频、视频、软件、程序、以及网页版式设计等部门来源于互联网,版权均归原作者所有!本网站提供的内容服务于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯本网站及相关权利人的合法权利。
联系信息:邮箱aoxolcom@163.com或见网站底部。
联系信息:邮箱aoxolcom@163.com或见网站底部。
THE END
请登录后发表评论
注册
社交帐号登录