1 mongdb和python交互的模块 pymongo 提供了mongdb和python交互的所有方法 安装方式: pip install pymongo

2 使用pymongo 1. 导入pymongo并选择要操作的集合 数据库和集合乜有会自动创建 Port :27017 ```python from pymongo import MongoClient client = MongoClient(host,port) collection = client[db名][集合名] ``` 2. 添加数据 insert可以批量的插入数据列表,也可以插入一条数据 ```python collection.insert([{"name":"test10010","age":33},{"name":"test10011","age":34}]/{"name":"test10010","age":33}) ```

3. 添加一条数据 ret = collection.insert_one({"name":"test10010","age":33}) print(ret)

4. 添加多条数据 ```python item_list = [{"name":"test1000{}".format(i)} for i in range(10)] #insert_many接收一个列表,列表中为所有需要插入的字典 t = collection.insert_many(item_list) ```

5. 查找一条数据 ```python #find_one查找并且返回一个结果,接收一个字典形式的条件 t = collection.find_one({"name":"test10005"}) print(t) ```

6. 查找全部数据 结果是一个Cursor游标对象,是一个可迭代对象,可以类似读文件的指针,但是只能够进行一次读取 ```python #find返回所有满足条件的结果,如果条件为空,则返回数据库的所有 t = collection.find({"name":"test10005"}) #结果是一个Cursor游标对象,是一个可迭代对象,可以类似读文件的指针, for i in t: print(i) for i in t: #此时t中没有内容 print(i) ```

7. 更新一条数据(全文档覆盖更新一条或多条) ```python #update_one更新一条数据 collection.update({"name":"test10005"},{"name":"new_test10005"},multi=True/False) ```

8. 更新一条数据(指定键值更新一条或多条) 注意使用$set命令 ```python #update_one更新一条数据 collection.update({"name":"test10005"},{"$set":{"name":"new_test10005"}},multi=True/False) ```

9. 更新一条数据 注意使用$set命令 ```python #update_one更新一条数据 collection.update_one({"name":"test10005"},{"$set":{"name":"new_test10005"}}) ```

10. 更行全部数据 ```python # update_one更新全部数据 collection.update_many({"name":"test10005"},{"$set":{"name":"new_test10005"}}) ```

11. 插入更新数据 ```python #update_one更新一条数据 collection.update({"name":"test10005"},{"$set":{"name":"new_test10005"}},upsert=True) ``` 先查询数据库中是否含有{"name":"test10005"}的数据,如果存在则{"name":"new_test10005"}进行修改,如果不存在则将{"name":"new_test10005"}插入到数据库

12. 删除一条数据 ```python #delete_one删除一条数据 collection.delete_one({"name":"test10010"}) ```

13. 删除全部数据 ```python #delete_may删除所有满足条件的数据 collection.delete_many({"name":"test10010"}) ```

Mango 基础知识的更多相关文章

  1. SQL 基础知识终极指南

    什么是数据库? 数据库是以电子方式从系统中存储和检索的大量数据集合. 存储在数据库中的结构化数据被处理.操纵.控制和更新以执行各种操作. 行业中使用的一些流行数据库是 Oracle.MySQL.Pos ...

  2. .NET面试题系列[1] - .NET框架基础知识(1)

    很明显,CLS是CTS的一个子集,而且是最小的子集. - 张子阳 .NET框架基础知识(1) 参考资料: http://www.tracefact.net/CLR-and-Framework/DotN ...

  3. RabbitMQ基础知识

    RabbitMQ基础知识 一.背景 RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现.AMQP 的出现其实也是应了广大人民群众的需求,虽然 ...

  4. Java基础知识(壹)

    写在前面的话 这篇博客,是很早之前自己的学习Java基础知识的,所记录的内容,仅仅是当时学习的一个总结随笔.现在分享出来,希望能帮助大家,如有不足的,希望大家支出. 后续会继续分享基础知识手记.希望能 ...

  5. selenium自动化基础知识

    什么是自动化测试? 自动化测试分为:功能自动化和性能自动化 功能自动化即使用计算机通过编码的方式来替代手工测试,完成一些重复性比较高的测试,解放测试人员的测试压力.同时,如果系统有不份模块更改后,只要 ...

  6. [SQL] SQL 基础知识梳理(一)- 数据库与 SQL

    SQL 基础知识梳理(一)- 数据库与 SQL [博主]反骨仔 [原文地址]http://www.cnblogs.com/liqingwen/p/5902856.html 目录 What's 数据库 ...

  7. [SQL] SQL 基础知识梳理(二) - 查询基础

    SQL 基础知识梳理(二) - 查询基础 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5904824.html 序 这是<SQL 基础知识梳理( ...

  8. [SQL] SQL 基础知识梳理(三) - 聚合和排序

    SQL 基础知识梳理(三) - 聚合和排序 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5926689.html 序 这是<SQL 基础知识梳理 ...

  9. [SQL] SQL 基础知识梳理(四) - 数据更新

    SQL 基础知识梳理(四) - 数据更新 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5929786.html 序 这是<SQL 基础知识梳理( ...

随机推荐

  1. Asp.Net SignalR GlobalHost外部通知

    GlobalHost 外部通知 之前都是在集线器类中进行服务器对客户端的通知操作,但是在开发中往往会有需求监控某个系统 ,比如OA系统  上级领导在上面宣布下午两点要开会 那么就要通知到其他的人.这里 ...

  2. MySQL8.0.12 安装及配置、读写分离,主从复制

    一.安装 1.从网上下载MySQL8.0.12版本,下载地址:https://dev.mysql.com/downloads/mysql/ 2. 下载完成后解压 我解压的路径是:D:\Java\mys ...

  3. 【c#】RabbitMQ学习文档(七)C# API

    今天这篇博文是我翻译的RabbitMQ的最后一篇文章了,介绍一下RabbitMQ的C#开发的接口.好了,言归正传吧. Net/C# 客户端 API简介 主要的命名空间,接口和类 定义核心的API的接口 ...

  4. JVM(一)史上最佳入门指南

    提到Java虚拟机(JVM),可能大部分人的第一印象是"难",但当让我们真正走入"JVM世界"的时候,会发现其实问题并不像我们想象中的那么复杂.唯一真正令我们恐 ...

  5. 【Java入门提高篇】Day25 史上最详细的HashMap红黑树解析

    当当当当当当当,好久不见,最近又是换工作,又是换房子,忙的不可开交,断更了一小段时间,最重要的一篇迟迟出不来,每次都犹抱琵琶半遮面,想要把它用通俗易懂的方式进行说明,确实有一定的难度,可愁煞我也,但自 ...

  6. C#简单接口和继承示例详解——快速入门

    上一篇中我们说到继承,其实他们之间是差不多的. 接口是方法的抽象,如果不同的类有同样的方法,那么就应该考虑使用接口. C#中接口可以多继承,接口之间可以相互继承和多继承.一个类可以同时继承一个类和多个 ...

  7. C# 获取电脑的网络连接状态

    判断连网的方法介绍 1. InternetGetConnectedState 此函数获取网络状态有延时,且对网卡伤害较大 MSDN官方自己推荐不建议使用,不管是连网状态下还是断网情况下,获取的网络状态 ...

  8. .Net Core 编码规范

    .Net Core 编码规范 标签: 未分类 概述 规范制定原则 方便代码的交流和维护. 不影响编码的效率,不与大众习惯冲突. 使代码更美观.阅读更方便. 使代码的逻辑更清晰.更易于理解. 术语定义 ...

  9. NLP&深度学习:近期趋势概述

    NLP&深度学习:近期趋势概述 摘要:当NLP遇上深度学习,到底发生了什么样的变化呢? 在最近发表的论文中,Young及其同事汇总了基于深度学习的自然语言处理(NLP)系统和应用程序的一些最新 ...

  10. 超级强大的socket工具ss,替代netstat

    1.结论:ss 命令比netstat 更强大,提供功能更多,并且性能更高. 2.显示当前系统的socket占用总体宏观情况. ss -s 当已创建的socket数过多时,已经说明系统配置存在问题. 3 ...