• 【Python数据库】MongoDB


    因上努力

    个人主页:丷从心·

    系列专栏:Python数据库

    学习指南:Python学习指南

    果上随缘


    数据插入

    from pymongo import MongoClient
    
    
    def insert_data():
        mongo_client = MongoClient(host='localhost', port=27017)
        collection = mongo_client['python_database']['book_info']
    
        try:
            collection.insert_many([{'id': 1, 'name': '射雕英雄传', 'pub_date': '1980-5-1', 'read_count': 12,
                                     'comment_count': 34, 'is_delete': 0},
                                    {'id': 2, 'name': '天龙八部', 'pub_date': '1986-7-24', 'read_count': 36,
                                     'comment_count': 40, 'is_delete': 0},
                                    {'id': 3, 'name': '笑傲江湖', 'pub_date': '1995-12-24', 'read_count': 20,
                                     'comment_count': 80, 'is_delete': 0},
                                    {'id': 4, 'name': '雪山飞狐', 'pub_date': '1987-11-11', 'read_count': 58,
                                     'comment_count': 24, 'is_delete': 0}])
        except Exception as e:
            print(f'数据插入失败: {e}')
        else:
            print('数据插入成功...')
    
    
    if __name__ == '__main__':
        insert_data()
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • mongo_client = MongoClient(host='localhost', port=27017)用于连接数据库

      • host用于指定数据库IP地址,localhost表示本地
      • port用于指定数据库端口
    • collection = mongo_client['python_database']['book_info']用于指定数据库和数据集合

      • 'python_database'是指定的数据库
      • 'book_info'是指定的数据集合
    • collection.insert_many()用于插入多条数据


    数据查询

    from pymongo import MongoClient
    
    
    def query_data():
        mongo_client = MongoClient(host='localhost', port=27017)
        collection = mongo_client['python_database']['book_info']
    
        result = collection.find_one({'name': '射雕英雄传'})
        if result:
            print(result)
        else:
            print('数据不存在...')
    
    
    if __name__ == '__main__':
        query_data()
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    数据更新

    from pymongo import MongoClient
    
    
    def update_data():
        mongo_client = MongoClient(host='localhost', port=27017)
        collection = mongo_client['python_database']['book_info']
    
        collection.update_one({'name': '射雕英雄传'}, {'$set': {'is_delete': 1}})
    
        result = collection.find_one({'name': '射雕英雄传'})
        if result:
            print(result)
        else:
            print('数据不存在...')
    
    
    if __name__ == '__main__':
        update_data()
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18

    数据删除

    from pymongo import MongoClient
    
    
    def delete_data():
        mongo_client = MongoClient(host='localhost', port=27017)
        collection = mongo_client['python_database']['book_info']
    
        collection.delete_one({'name': '射雕英雄传'})
    
        result = collection.find()
        if result:
            for item in result:
                print(item)
        else:
            print('数据不存在...')
    
    
    if __name__ == '__main__':
        delete_data()
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

  • 相关阅读:
    10.5作业
    weblog项目开发记录--SpringBoot后端工程骨架
    集合-List集合
    OpenMP task construct 实现原理以及源码分析
    用DFS方法解决不定项列举问题
    深度解析KubeEdge EdgeMesh 高可用架构
    C语言实现根据用户输入的整数求和(两种方法)
    微信支付Native(一)准备和相关知识
    新知实验室 腾讯云实时音视频 RTC WEB端初识
    中断控制系统
  • 原文地址:https://blog.csdn.net/from__2024_04_11/article/details/138153469