MongoDB的基本使用

文章目录


在这里插入图片描述
在这里插入图片描述

数据库

创建、查看、删除库
查看数据库
show dbs" 命令可以显示所有数据的列表。

> show dbs
admin   0.000GB
config  0.000GB
local   0.000GB

执行 “db” 命令可以显示当前数据库对象或集合。

> db
test

切换数据库
运行"use"命令,可以连接到一个指定的数据库(若没有,则会自动创建)

> use djtest
switched to db djtest

插入内容
往数据库里插入一条数据

> db.djtest.insert({"name":"xiaohong"})
WriteResult({ "nInserted" : 1 })

在这里插入图片描述
删除数据库

> db.dropDatabase()
{ "dropped" : "djtest", "ok" : 1 }

在这里插入图片描述
有一些数据库名是保留的,可以直接访问这些有特殊作用的数据库。

  • admin: 从权限的角度来看,这是"root"数据库。要是将一个用户添加到这个数据库,这个用户自动继承所有数据库的权限。一些特定的服务器端命令也只能从这个数据库运行,比如列出所有的数据库或者关闭服务器。
  • local: 这个数据永远不会被复制,可以用来存储限于本地单台服务器的任意集合
  • config: 当Mongo用于分片设置时,config数据库在内部使用,用于保存分片的相关信息。

集合

  • 集合相当于一张表
  • 集合可以有多个文档(相当于表里可以有多个列)

在数据库下,如果没有创建集合,那么会自动创建一个和数据库相同名称的集合名

> use demo
switched to db demo
> db.demo.insert({"name":"zhangsan"})
WriteResult({ "nInserted" : 1 })
> show collections
demo

创建、查看、删除集合(表)

> show collections
demo
> db.createCollection("c1")  //创建集合
{ "ok" : 1 }
> db.createCollection("c2")
{ "ok" : 1 }
> show collections  //查看集合
c1
c2
demo
> db.c1.drop()  //删除集合
true
> db.c2.drop()
true
> show collections
demo

文档

  • 文档是mongodb的基本单元
  • 相当于表中的一条记录
  • 以json格式显示
    插入、查看文档(相当于DML:IUDS)
    插入:
    db.collection.insert({“name”:“hello”})
    查看:
    db.collection.find().pretty()
    插入复杂的文档
    声明变量
    document=({
    title:‘MongoDB’,
    by:‘RuotongYu’,
    tags:[‘mongodb’,‘database’,‘NoSQL’],
    });
    db.collection.insert(document)
> db.createCollection("c2")
{ "ok" : 1 }
> db.c2.insert({"name":"xiaohong"})  //插入文档
WriteResult({ "nInserted" : 1 })
> db.c2.find()  //查看文档
{ "_id" : ObjectId("5e97113b645bae6856e8bb6b"), "name" : "xiaohong" }
> db.c2.find().pretty()  //pretty可以更美观的进行展示
{ "_id" : ObjectId("5e97113b645bae6856e8bb6b"), "name" : "xiaohong" }
> doc=({"name":"xiaohei","age":32})  //声明变量
{ "name" : "xiaohei", "age" : 32 }
> db.c2.insert(doc)  //引用变量
WriteResult({ "nInserted" : 1 })
> db.c2.find().pretty()
{ "_id" : ObjectId("5e97113b645bae6856e8bb6b"), "name" : "xiaohong" }
{
        "_id" : ObjectId("5e9711bb645bae6856e8bb6c"),
        "name" : "xiaohei",
        "age" : 32
}

在这里插入图片描述
更新和删除
update() 方法用于更新已存在的文档。语法格式如下:

db.collection.update(
   <query>,
   <update>,
   {
     upsert: <boolean>,
     multi: <boolean>,
     writeConcern: <document>
   }
)

参数说明:

  • query : update的查询条件,类似sql update查询内where后面的。
  • update : update的对象和一些更新的操作符(如 , , ,inc…)等,也可以理解为sql update查询内set后面的
  • upsert : 可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。
  • multi : 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。
  • writeConcern :可选,抛出异常的级别。
    注意:update是替换,没有修改的字段会消失!

修改文档

db.col.upate({'title':'MongoDB'})

删除文档

db.col.remove({'name':'hello123'})

删除一个文档

db.col.remove.({'name':'hello',1})
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值