• python mongo


    参考菜鸟教程:  https://www.runoob.com/python3/python-mongodb.html

     创建数据库,表,添加数据

    #encoding=utf-8
    #!/usr/bin/python3
     
    import pymongo
     
    myclient = pymongo.MongoClient("mongodb://192.168.25.142:27017")
    #创建数据库--SeaTestPy
    mydb = myclient["SeaTestPy"]
    #创建一个集合(表)--mytable
    mycol = mydb["mytable"]
    #获取该库下所有的colllction(表)的名字
    collist = mydb. list_collection_names()
    # collist = mydb.collection_names()
    # 判断 sites 集合(collection)是否存在
    if "mytable" in collist:
        print("集合已存在!")
    else:
        print("不存在,创建该表")
    
    print("----------插入数据到表中(单条数据)-------------------")
    mydict = { "name": "SeatestPy", "alexa": "10000", "url": "https://www.runoob.com" }
    x = mycol.insert_one(mydict) 
    print(x)
    
    
    print("------------insert many  批量插入--------------")
    mylist = [
      { "_id": 1, "name": "RUNOOB", "cn_name": "菜鸟教程"}, #如果指定了id ,那么会覆盖
      { "name": "Taobao", "alexa": "100", "url": "https://www.taobao.com" },
      { "name": "QQ", "alexa": "101", "url": "https://www.qq.com" },
      { "name": "Facebook", "alexa": "10", "url": "https://www.facebook.com" },
      { "name": "知乎", "alexa": "103", "url": "https://www.zhihu.com" },
      { "name": "Github", "alexa": "109", "url": "https://www.github.com" }
            ]
    x_many = mycol.insert_many(mylist)
    print(x_many)

    查询数据:

    #!/usr/bin/python3
     
    import pymongo
     
    myclient = pymongo.MongoClient("mongodb://192.168.25.142:27017")
    #创建数据库--SeaTestPy
    mydb = myclient["SeaTestPy"]
    #创建一个集合(表)--mytable
    mycol = mydb["mytable"]
    #获取该库下所有的colllction(表)的名字
    collist = mydb. list_collection_names()
    # collist = mydb.collection_names()
    # 判断 sites 集合(collection)是否存在
    if "mytable" in collist:
        print("集合已存在!")
    else:
        print("不存在,创建该表")
        
    print("----------find all data-------------------")
    # datas=mycol.find()
    # for x in datas:
    #     print(x)  
        
        
    print("----------查询指定字段的数据-------------------")
    # # 我们可以使用 find() 方法来查询指定字段的数据,将要返回的字段对应值设置为 1。
    # for x in mycol.find({},{ "_id": 0, "name": 1, "alexa": 1 }):
    #   print(x)
    
    
    print("----------根据指定条件查询-----------------")
    # myquery = { "name": "RUNOOB" }
    # mydoc = mycol.find(myquery)
    # for x in mydoc:
    #   print(x)
    
    
    print("---------高级查询-----------------")
    # 查询的条件语句中,我们还可以使用修饰符。
    # 以下实例用于读取 name 字段中第一个字母 ASCII 值大于 "H" 的数据,大于的修饰符条件为 {"$gt": "H"} 
    # myquery = { "name": { "$gt": "H" } }
    # mydoc = mycol.find(myquery)
    # for x in mydoc:
    #   print(x)
        
    
    print("---------使用正则表达式查询-----------------")
    # 使用正则表达式查询
    # 我们还可以使用正则表达式作为修饰符。
    # 正则表达式修饰符只用于搜索字符串的字段。
    # 以下实例用于读取 name 字段中第一个字母为 "R" 的数据,正则表达式修饰符条件为 {"$regex": "^R"} :
    # myquery = { "name": { "$regex": "^R" } }
    # mydoc = mycol.find(myquery)
    # for x in mydoc:
    #   print(x)
    
    
    print("---------返回指定条数记录-----------------")
    myresult = mycol.find().limit(5)
    # 输出结果
    for x in myresult:
      print(x)
  • 相关阅读:
    springboot2的redis缓存管理器cacheManager配置,使存入json格式数据
    td内有图片和文字,如何都垂直居中?
    java使用itext导出PDF文本绝对定位
    plsqlDeveloper快速输入(自动替换)配置
    ExtJs4grid合并行
    MySQL存储引擎与体系结构
    Spring AOP
    在IoC容器中装配Bean
    java内存区域与内存溢出异常
    spring IoC(一)
  • 原文地址:https://www.cnblogs.com/lshan/p/11649846.html
Copyright © 2020-2023  润新知