美文网首页
MongoDB基础操作

MongoDB基础操作

作者: 我爱张智容 | 来源:发表于2021-06-19 16:36 被阅读0次

MongoDB基础操作

一、数据库操作

# 1.显示数据库
show dbs
show databases
# 2.创建数据库或使用数据库
use db   # 注意: db 存储值后,才会在show dbs命令下显示
# 3.查看当前数据库
db
# 4.删除当前的数据库
db.dropDatabase()

二、集合操作

注意:一般不手动创建集合,向不存在的集合第一次加入数据时,集合会被自动创建出来

# 1.创建集合
db.createCollection('集合名称')
db.createCollection('集合名称', {capped: true, size: 10})
参数capped: 默认值为false表示不设置上下,值为true表示设置上限
参数size: 当capped为ture时,需要指定此参数,表示上限大小,当文档达到上限时,会覆盖之前的数据,单位为字节
# 2.查看集合
show collections
# 3.删除集合
db.集合名称.drop()

三、数据类型

ObjectID: 文档ID
String: 字符串,必须是utf-8
Boolean: 存储一个布尔值, true false
Integer: 整数可以是32或64取决于服务器
Double: 浮点型
Arrays: 数组或列表, 多个值存储到一个键
Object: 用于嵌入式的文档, 即一个值为一个文档
Null: 存储Null值
Timestamp: 时间戳,表示从1970-1-1到现在的总秒数
Date: 存储当前的日期或时间的UNIX的时间格式

注意:

1.创建日期的格式如下
new Date('YYYY-MM-DD')
2.ObjectID
每个文档都有一个_id属性, 保存每个文档的唯一性(相当于MySQL的主键)
可以自己去设置_id插入文档,如果没有提供,那么MongoDB为每个文档提供一个独特的_id,类型为ObjectID()

ObjectID是一个12字节的十六进制数
    前4个字节为当前的时间戳
    接下来3个字节的机器ID
    接下来2个字节中MongoDB的服务进程id
    最后3个字节是简单的增量值

好吧,现在关于ObjectID的字节数量,不确定

四、插入文档

db.集合名称.insert(document)
# 文档自动生成_id
db.stu.insert({name: 'tom', age: '24'})
# 设置_id
db.stu.insert({_id: '20191122', name: 'bob', age: 12})
# 注意:插入文档时,如果不指定_id参数。MongBD会为文档分配一个唯一的ObjectID

五、保存文档

db.集合名称.save(document)

如果文档_id存在,则修改文档,如果不存在,则插入文档
实例
db.stu.save({"_id" : ObjectId("5dd765df2fe79d143d09716d"), "name" : "tom", "age" : "10"})

六、查询文档(简单)
db.stu.find()

复杂的查询,稍后更新

七、更新文档

db.集合名称.update(<query>, <update>, {multi: <Boolean>})
参数query: 查询条件
参数update: 更新操作符
参数multi: 可选,默认false, 表示只更新找到的第一条记录,值为true表示把满足条件的文档全部更新

db.集合名称.update({name: 'tom'}, {name: 'hr'})  # 替换整条记录
db.stu.update({name: 'tom'}, {$set: {name: 'hehe'}})  # 更新一条记录
db.stu.update({age: 24}, {$set: {name: 'hihi'}}, {multi: true})     # 全部更新

八、删除文档

db.集合名称.remove(<query>, {justOne: <Boolean>})
参数query: 删除的文档的条件
参数justOne: 可选, 如果设为true或1, 则只删除一条,默认为false,表示删除多条
# 例子
db.集合名称.remove({name: 'tom'})  # 删除name值为tom的所有文档
db.集合名称.remove({name: 'tom'}, {justOne: true}) # 删除一条记录

注意:

save()和update()的区别
  save()可以修改字段名称或添加数据
  update()修改或添加数据

练习数据

db.stu.insert({name: '郭靖', hometown: '蒙古', age: 20, gender: true})
db.stu.insert({name: '黄蓉', hometown: '桃花岛', age: 18, gender: false})
db.stu.insert({name: '华筝', hometown: '蒙古', age: 18, gender: false})
db.stu.insert({name: '黄药师', hometown: '桃花岛', age: 40, gender: true})
db.stu.insert({name: '段誉', hometown: '大理', age: 16, gender: true})
db.stu.insert({name: '段王爷', hometown: '大理', age: 45, gender: true})
db.stu.insert({name: '洪七公', hometown: '华山', age: 40, gender: true})

相关文章

  • MongoDB基础操作

    mongodb基础操作

  • MongoDB 3.4 学习笔记 (六):MongoDB 更新、

    1. MongoDB 更新、原子操作和删除 1. MongoDB 更新、原子操作和删除1.1. 更新操作的基础1....

  • mongodb基础操作

    作者:源码时代教学部讲师,转载请注明出处。 1.MongoDB基础命令(重点) 1.1.数据库操作 show db...

  • MongoDB基础操作

    更多内容欢迎来到博客 :https://imjianjian.github.io MongoDB版本:3.4 查询...

  • MongoDB基础操作

    创建数据库 use db 删除数据库 db.dropDatabase() 查看所有数据库 show dbs 创建集...

  • MongoDB基础操作

    MongoDB基础操作 一、数据库操作 二、集合操作 注意:一般不手动创建集合,向不存在的集合第一次加入数据时,集...

  • mongoDB基础操作

    一、数据库操作 二、用户操作 三、集合操作 四、索引操作

  • mongodb之remove操作

    在上一篇mongodb基础操作之update更新操作[https://www.jianshu.com/p/970a...

  • MongoDB v4.0 命令

    MongoDB v4.0 命令 官方文档 > 点这里 < 操作系统库 操作自定义库 1.0.0 基础操作 [c...

  • MongoDB v4.0 命令

    MongoDB v4.0 命令 官方文档 > 点这里 < 操作系统库 操作自定义库 1.0.0 基础操作 [c...

网友评论

      本文标题:MongoDB基础操作

      本文链接:https://www.haomeiwen.com/subject/kxrosltx.html