mongodb中基本的概念是文档、集合、数据库,下面我们挨个介绍。
数据库
与关系型数据库一样,MongoDB存在数据库的概念,一个MongoDB可以创建多个数据库。
我们可以使用show dbs查看所有的数据库;
使用db显示当前数据库名称;
使用use dbName进入dbName数据库,即使这个数据库并不存在。
C:\Users\Neal>mongo localhost:27017
MongoDB shell version: 3.0.1
connecting to: localhost:27017/test
> show dbs
local 0.078GB
> db
test
> use local
switched to db local
>
文档
文档(document)是mongodb中的最核心的概念,是其核心单元,我们可以将文档比作关系型数据库中的记录。
多个键及其关联的值有序的放置在一起就是文档。在mongodb中使用一种类json的bson存储数据。
bson数据可以理解为在json的基础上添加了一些json中没有的数据类型。
以下是json与bson之间数据类型的比较:
json
数字(整数或浮点数)
字符串(在双引号中)
逻辑值(true 或 false)
数组(在方括号中)
对象(在花括号中)
null
bson
String : 这是最常用的数据类型来存储数据。在MongoDB中的字符串必须是有效的UTF-8。
Integer : 这种类型是用来存储一个数值。整数可以是32位或64位,这取决于您的服务器。
Boolean : 此类型用于存储一个布尔值 (true/ false) 。
Double : 这种类型是用来存储浮点值。
Min/ Max keys : 这种类型被用来对BSON元素的最低和最高值比较。
Arrays : 使用此类型的数组或列表或多个值存储到一个键。
Timestamp : 时间戳。这可以方便记录时的文件已被修改或添加。
Object : 此数据类型用于嵌入式的文件。
Null : 这种类型是用来存储一个Null值。
Symbol : 此数据类型用于字符串相同,但它通常是保留给特定符号类型的语言使用。
Date : 此数据类型用于存储当前日期或时间的UNIX时间格式。可以指定自己的日期和时间,日期和年,月,日到创建对象。
Object ID : 此数据类型用于存储文档的ID。
Binary data : 此数据类型用于存储二进制数据。
Code : 此数据类型用于存储到文档中的JavaScript代码。
Regular expression : 此数据类型用于存储正则表达式
下面是一个文档示例:
{ "Name" : "Neal", "Age" : 24 }
集合
集合就是文档的组合,关系型数据库中记录组成一张数据表,而在MongoDB中文档组成了集合(collection),我们可以通过show collections查看当前数据库的集合:
show collections
在mongodb中的集合是无模式的,也就是说集合中存储的文档的结构可以是不同的,比如下面的两个文档可以同时存入到一个集合中:
{ "Name" : "Neal", "Age" : 24 }
{ "Name" : "Harry", "Age" : 24 , "Gender" : "Male"}
MongDB与关系型数据库比较
以下表格准确的表现了MongoDB与关系型数据库的区别于联系:
RDBMSMongoDB
Database(数据库)Database(数据库)
Table(表)Collection(集合)
Record(记录)Document(文档)
Column(栏)Key(键)
Value(值)Value(值)
版权声明:本文为博主原创文章,未经博主允许不得转载。
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com