关于mongodb数据库的增删改查

插入

  • 语法

    db.集合名称.insert(document)
    
  • 插入的内容是document(文档)类型,键值对形式,使用{}

  • 插入文档时,如果不指定参数_id,那么MongoDB会为文档分配一个唯一的ObjectID

  • 例如

    // 创建集合students
    db.createCollection('students')
    // 向集合中插入一条学生数据
    db.students.insert({name:'张三',age:18,gender:'男',address:'北京市昌平区'})
    

简单查询

  • 语法

    db.集合名称.find()  // 查询了集合中所有的数据
    
  • 例如查询集合students中所有的学生数据

    db.students.find()
    

更新

  • 语法

    db.集合名称.update({query},{update},{multi:boolean})
    
    • 参数query:查询的条件,类似于sql语句update中的where部分
    • 参数update:更新操作符,类似于sql语句update中的set部分
    • 参数multi:可选参数,默认是False,表示只更新找到的第一条数据,值为Ture表示吧满足条件的文档全部更新
  • 全文档更新:

    db.students.update({name:'zhangsan'},{name:'张三'})
    

    执行完之后我们会看到

    这里写图片描述

    这样更新的话会将整个文档的值只保留下一个name,那么我们应该只修改对应的某个键所对应的值呢?

    可以通过操作符 $set来完成对指定属性的更新

    db.students.update({name:'lisi'},{$set:{name:'李四'}})
    

    我们可以看到,使用$set操作符之后之前对应的lisi的名字现在变成了李四

    这里写图片描述

  • 修改多条匹配到的信息,multi的应用

    // 比如我们将现有的数据中的性别为1的全部修改为0
    db.students.update({},{$set:{gender:0}},{multi:true})
    

    这里写图片描述

保存

  • 语法:

    db.集合名称.save(document)
    
  • 例如:

    db.students.save({name:'隔壁老王',age:39,gender:1,address:'shanxi'})
    

这里写图片描述

删除

  • 语法

    db.集合名称.remove({query},{justOne:boolean})
    
    • 参数query:可选参数,删除文档的条件
    • 参数justOne:可选参数,设置为1为True,只删除一条,默认False,表示删除多条
  • 例子:只删除匹配到的第一条

    db.students.remove({gender:0},{justOne:true})
    
  • 例子:全部删除

    db.students.remove({})
阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页