MongoDB数据库、集合、文档的概念
对于关系型数据库,我们知道,数据库中有多个表,数据表里有多行数据。而对于MongoDB来说,则是数据库里有多个集合,集合里由多个文档。
数据库
MongoDB的数据库概念和Mysql的差不多,每个数据库都可以设置独立的权限。
首先,我们来看如何创建数据库,MongoDB对于数据库名称也是有限制的,只能使用数字或字母,另外数据库名称是区分大小写的,一般的,我们都会使用小写的。另外,有一些关键字也是不可以使用的,如:admin、config、local等。
在MongoDB中,不需要显示的创建数据库,只需要选择use dbName即可,当数据库不存在的时候,会自动为我们创建。
> use huoying
switched to db huoying
当使用db命令时,会显示当前使用的数据库名。
> db
huoying
查看当前所有数据库,使用show dbs;
> show dbs;
admin 0.000GB
config 0.000GB
huoying 0.000GB
local 0.000GB
集合
MongoDB的集合类似于Mysql中的表,集合是有多个文档组成的。但集合不像表那样有字段的限制,集合下面的文档可以是各种各样。比如,一个集合下面可能有下面两种文档:
{"name":"gwx", "age" : 30},
{"id":1, "score":100}
虽然,集合对文档是没有限制的,但是为了数据管理的方便,我们一般都将相关文档放在一个集合里。
创建集合,分为直接创建和隐式创建。
# 显示的创建集合
> db.createCollection('huoying')
{ "ok" : 1 }
隐式创建集合,直接创建文档时,若集合不存在,会先创建集合
文档
最后,我们来看看文档。文档的数据类型类似于php中的关联数据、或JavaScript中的对象。
注意,文档是区分大小写以及数据类型的。看下面例子:
# 下面两个是不一样的文档,他们的数据类型不一样
{"name":30}
{"name":"30"}
# 下面两个是不一样的文档,键名不一样
{"name":30}
{"NAME":30}
新增文档
使用命令db.集合名.insertOne(文档数据),可以向指定集合插入一篇文档。若该集合不存在时,则会隐式创建该集合。
> db.users.insertOne({"name":"gwx", "age":29})
{
"acknowledged" : true,
"insertedId" : ObjectId("5f0cfdbb7688816db4d031bc")
}
> db.users.find()
{ "_id" : ObjectId("5f0cfdbb7688816db4d031bc"), "name" : "gwx", "age" : 29 }
>
修改文档
使用update来更新文档内容,update需要两个参数,第一个是限定条件,用来查找指定的文档,第二个是新文档的内容。
> db.users.update({name:"gwx"}, {name:"monkeyking", age:500})
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
> db.users.find()
{ "_id" : ObjectId("5f0cfdbb7688816db4d031bc"), "name" : "monkeyking", "age" : 500 }
删除文档
使用remove来删除文档
> db.users.remove({age:500})
WriteResult({ "nRemoved" : 1 })
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanfehic
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
怎样阻止微信小程序自动打开
PHP中文网 06-13 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
photoshop蒙版画笔没反应怎么办
PHP中文网 06-24