如何在Python中操作MongoDB

文章目录

      • 一、MongoDB环境配置:
      • 二、Compass操作MongoDB:
      • 三、MongoDB概念介绍:
      • 四、MongoDB三元素:
      • 五、MongoDB基本操作命令:
      • 六、Python操作MongoDB:

一、MongoDB环境配置:

​ 安装完成后在高级环境设置-环境变量-系统变量-Path中添加MongoDB安装文件夹中的bin文件夹,在cmd命令行输入mongo进入数据库。

二、Compass操作MongoDB:

​ Compass是MongoDB安装时自带的图形化操作软件,打开时直接点击connet进入数据库,点击CREATE DATABASE创建数据库

三、MongoDB概念介绍:

sQL术语/概念 mongodb术语/概念 解释/说明
database database 数据库
table collection 数据库表/集合
row document 数据记录行/文档
column field 数据字段/域
index index 索引
joins joins 表连接,MongoDB不支持
primary key primary key 主键,MongoDB自动将_id字段设为主键

四、MongoDB三元素:

三元素:数据库、文档、集合

  1. 文档(document):就是关系型数据库的一行文档是一个对象,由键值对构成,是 json 的扩展格式:

    {'name':'abc','gender':'1'}

  2. 集合(collection):就是关系型数据库中的表,可以存储多个文档,结构可以不固定。可以存储如下文档在一个集合中:

    {"name":"abc","gender":"1"}
    {"name":"xxx","age":18}
    {"title":'yyy','price':20.9}
    

五、MongoDB基本操作命令:

  1. db:查看当前的数据库

  2. show dbs:查看所有的数据库

  3. use 数据库名:切换到要使用的数据库。如果不存在则自动创建一个。(创建完成后需要插入数据才算创建成功)

  4. db.dropDatabase():删除当前指向的数据库

  5. db.集合名.insert(value):添加数据到指定的集合中。

  6. db.集合名.find():从指定集合中查找数据

    更多命令请见:http://www.runoob.com/mongodb/mongodb-tutorial.html

六、Python操作MongoDB:

  1. 安装pymongo:

    python操作mongodb,必须下载pymongo模块,

    cmd输入pip install pymongo

  2. 连接MongoDB:

    import pymongo
    
    #获取连接mongoDB的对象
    client=pymongo.MongoClient("127.0.0.1",port=27017)
    #获取数据库(如果没有demo数据库则自动创建一个)
    db=client.demo
    #获取数据库中的集合(就是mysql中的表)
    collection=db.example   #example为表的名字
    #写入数据
    collection.insert({"username":"xiaogang"})
    
    
  3. 数据类型:

    类型 说明
    Object ID 文档ID
    String 字符串,最常用,必须是有效的UTF-8
    Boolean 存储一个布尔值,true或false
    Integer 整数,可以是32位或64位,这取决于服务器
    Double 存储浮点值
    Arrays 数组或列表,多个值存储到一个键
    Object 用于嵌入式的文档,即一个值为一个文档
    Null 存储Null值
    Timeestamp 时间戳,表示从 1970-1-1 到现在的总秒数
    Date 存储当前日期或时间的UNIX时间格式
  4. 操作MongoDB

    MongoDB的基本操作命令和pymongo的命令很相似

    • insert():写入一个数据

      collection.insert({"username":"xiaogang"})
      
    • insert_one():写入一条数据

      collection.insert_one({"username":"aaa","password":"111111"})
      
    • insert_many([ ]):写入多条数据到集合中

      collection.insert_many([    {"username":"abc","password":"123456"},    {"username":"cba","password":"654321"}
      ])
      
    • find_one():查找并返回一条数据

      name=collection.find_one({'username':'abc'})
      print(name)
      
    • find():查找集合并返回符合的数据,返回一个迭代器

      names=collection.find()
      for i in names:
      	print(i)
      
    • update_one:更新一条数据,将abc改成aaa

      collection.update_one({"username":"abc"},{"$set":{"username":"aaa"}})
      
    • update_many:更新多条数据,将所有aaa改成bbb

      collection.update_many({"username":"aaa"},{"$set":{"username":"bbb"}})
      
    • delete_one():删除一条数据

      collection.delete_one({"username":"ccc"})
      
    • delete_many():删除多条数据,将所有username为ccc删除

      collection.delete_many("username":"ccc")
      

你可能感兴趣的:(Python)