zoukankan      html  css  js  c++  java
  • 非关系型数据库mongodb的语法模式

    from pymongo import MongoClient
    
    
    
    #连接
    conn = MongoClient('127.0.0.1', 27017)
    
    #进入数据库
    db = conn.edianzu  #连接mydb数据库,没有则自动创建
    
    #进入集合
    pinglun = db.pinglun  # 使用test_set集合,没有则自动创建
    
    
    
    
    
    #插入数据(insert插入一个列表多条数据不用遍历,效率高, save需要遍历列表,一个个插入)
    
    #1/insert方式
    pinglunDict = {
        'username':'小红',
        'headerimg': 'https://tvax3.sinaimg.cn/crop.0.0.750.750.180/006758Pyly8fg6x9s2jhtj30ku0ku74m.jpg',
        'content': '王思聪吃热狗又出周边了!这次是捣蒜神器,想要[doge] ​​​​',
        'contentimg': ['https://wx4.sinaimg.cn/mw690/006758Pyly1fx0etbf8f0j30yi1hwwwl.jpg', 'https://wx3.sinaimg.cn/mw690/006758Pyly1fx0etbpdnbj30k00qote5.jpg', 'https://wx1.sinaimg.cn/mw690/006758Pyly1fx0etbwqp2j30k00qo796.jpg'],
        'zanNum':0
    
    }
    
    # pinglun.insert(pinglunDict)
    
    #2/save方式
    # pinglun.save(pinglunDict)
    
    #添加多条数据到集合中
    pinglunList = [
        {
            'username': '小李',
            'headerimg': 'https://tvax3.sinaimg.cn/crop.0.0.750.750.180/006758Pyly8fg6x9s2jhtj30ku0ku74m.jpg',
            'content': '王思聪吃热狗又出周边了!这次是捣蒜神器,想要[doge] ​​​​',
            'contentimg': ['https://wx4.sinaimg.cn/mw690/006758Pyly1fx0etbf8f0j30yi1hwwwl.jpg', 'https://wx3.sinaimg.cn/mw690/006758Pyly1fx0etbpdnbj30k00qote5.jpg', 'https://wx1.sinaimg.cn/mw690/006758Pyly1fx0etbwqp2j30k00qo796.jpg'],
            'zanNum':0
    
        },
        {
            'username': '小黑',
            'headerimg': 'https://tvax3.sinaimg.cn/crop.0.0.750.750.180/006758Pyly8fg6x9s2jhtj30ku0ku74m.jpg',
            'content': '王思聪吃热狗又出周边了!这次是捣蒜神器,想要[doge] ​​​​',
            'contentimg': ['https://wx4.sinaimg.cn/mw690/006758Pyly1fx0etbf8f0j30yi1hwwwl.jpg', 'https://wx3.sinaimg.cn/mw690/006758Pyly1fx0etbpdnbj30k00qote5.jpg', 'https://wx1.sinaimg.cn/mw690/006758Pyly1fx0etbwqp2j30k00qo796.jpg'],
            'zanNum':0
    
        },
        {
            'username': '小花',
            'headerimg': 'https://tvax3.sinaimg.cn/crop.0.0.750.750.180/006758Pyly8fg6x9s2jhtj30ku0ku74m.jpg',
            'content': '王思聪吃热狗又出周边了!这次是捣蒜神器,想要[doge] ​​​​',
            'contentimg': ['https://wx4.sinaimg.cn/mw690/006758Pyly1fx0etbf8f0j30yi1hwwwl.jpg', 'https://wx3.sinaimg.cn/mw690/006758Pyly1fx0etbpdnbj30k00qote5.jpg', 'https://wx1.sinaimg.cn/mw690/006758Pyly1fx0etbwqp2j30k00qo796.jpg'],
            'zanNum':0
    
        }
    ]
    # pinglun.insert(pinglunList)
    #或
    # for item in pinglunList:
    #     pinglun.save(item)
    
    
    #更新数据
    # pinglun.update({'username':'小花'},{'$set':{'zanNum':1}},multi=True,upsert=True)
    
    # my_set.update(
    #     < query > ,  # 查询条件
    #     < update > ,  # update的对象和一些更新的操作符
    #     {
    #         upsert: < boolean >,  # 如果不存在update的记录,是否插入
    #         multi: < boolean > ,  # 可选,mongodb 默认是false,只更新找到的第一条记录
    #     }
    # )
    # 把上面插入的数据内的age改为20
    
    
    
    
    # #删除某个文档
    # pinglun.remove({查找语句})
    # pinglun.remove({'username': '小李'})
    
    
    
    # #删除整条记录
    # id = my_set.find_one({"name": "zhangsan"})["_id"]
    
    #删除name=lisi的某个id的记录
    # pinglunimg = pinglun.find_one({'username':'小黑'})['_id']
    # print(pinglun.remove(pinglunimg))
    
    # #删除集合里的所有记录
    # pinglun.remove()
    
    
    #查找具体某条信息
    #语法:find_one({条件key:条件value})
    
    # result = pinglun.find_one({'username':'小黑'})
    # result = pinglun.find({'username':'小黑','zanNum':0})
    # result = pinglun.find().count()
    # print(result)
    
    
    
    
    
    
    # #查询,大于$gt,大于等于$gte,小于$lt,小于等于$lte,不等于$ne
    # result = pinglun.find_one({
    #     'zanNum':{'$ne':0}
    # })
    # print(result)
    
    
    # pinglun.update({'username':'小花'},{'$set':{'zanNum':1}})
    #在原基础上进行增加
    # pinglun.update({'username': '小花'}, {'$inc': {'zanNum': 1}})
    
    # #and条件,》db.col.find({key1:value1, key2:value2}).
    # result = pinglun.find_one({
    #     'zanNum': {'$lt': 50},
    #     'username':'小花'
    # })
    # print(result)
    
    # #OR 条件
    
    # result = pinglun.find_one({
    #     '$or':[
    #         {'zanNum':0},
    #         {'zanNum':2}
    #     ]
    # })
    # print(result)
    
    
    # # >db.col.find(
    # #     {$or: [
    # #         {key1: value1}, {key2: value2}
    # #     ]
    # #     }
    # # )
    
    # #limit()方法接受一个数字参数,该参数指定从MongoDB中读取的记录条数。
    # #skip()方法来跳过指定数量的数据,skip方法同样接受一个数字参数作为跳过的记录条数。
    
    
    # # count统计数目
    
    
    # #sort排序
    # #pymongo.ASCENDING      1
    # #pymongo.DESCENDING    -1
    # # find().sort((("age", pymongo.ASCENDING), ("high", pymongo.ASCENDING)))
    
    # #正则表达式查询
    # # find({'name': {'$regex': r'.*wei.*'}})
  • 相关阅读:
    项目管理
    开源视频会议bigbluebutton开发(1)——初始化安装以及配置
    oracle休系统结构
    Tomcat上安装配置Axis
    锁表头
    文件复制三种方法
    程序员技术练级攻略
    Linux (RHEL 5.4)下安装 Oracle 10g R2
    Android 学习资料收集汇总
    WAS61安装调整和应用部署.doc
  • 原文地址:https://www.cnblogs.com/Dark-fire-liehuo/p/9932303.html
Copyright © 2011-2022 走看看