MongoDB增删改查的python操作

前置知识

如果你已经大致了解了MongoDB的基本概念,请跳到第二节。
MongoDB文档数据库的存储结构分为四个层次,从大到小依次是:

  • 数据库database
  • 集合collection
  • 文档document
  • 键值对 key-value pair

数据库由集合组成,集合没有固定的结构,一个集合是一些文档构成的对象。考虑到集合可以插入任意格式和类型的数据,一个集合没有固定的标准,那么就有一个问题:我们该如何得知一个文档该插入哪个集合呢?所以,通常情况下插入集合的数据都会有一定的关联性,以某个主题或者在语义区分。与关系数据库的区别也就仅仅在于集合内的结构了。所以可以说非关系型的数据库(如MongoDB) 玩法更多,使用更灵活。

然后谈谈文档。文档是MongoDB的核心概念,是数据的基本单元,与关系数据库中的行十分类似。文档是一组有序的键值对集合。在同一个集合当中的文档不要求键保持一致,例如,一个集合可能包含用户信息,但每个用户文旦更可以包含不同的信息,如用户名、年龄、电子邮件地址等,而这些字段并不是所有文档都必须具备的。虽然集合不强制要求文档结构,但是数据建模的不同可能会影响程序性能和数据库容量。文档之间的关系是数据建模需要考虑的重要因素。文档与文档之间的关系包括嵌入和引用两种。

文档的数据结构与JSON相同,所有存储在集合中的数据都是BSON格式。(*BSON: Binary JSON)

键值对,键key起到唯一索引的作用,一个键对应一个值,一个值不是指数值而是数据。数据可以是列表list包含着的一组key-value,也可以是单独的string, int, double, char, bool,甚至是png,jpg等等

Create operation

  • 插入多个文档

    import pymongo
    
    client = pymongo.MongoClient(host='localhost', port=27017)
    
    db = client.market
    
    coll = db.customer
    
    docs = [
        {
         
         "name": "zhao", "age": 20, "gender": "male", "hasCar": False},
        {
         
         "name": "wang", "age": 33, "gender": "male", "hasCar": True},
        {
         
         "name": "lu", "age": 23, "gender":"female", "hasCar": True}
    ]
    result = coll.insert_many(docs)
    
    cursor = coll.find(
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ayu阿予

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值