MongoDB入门
时间:2022-07-25
本文章向大家介绍MongoDB入门,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
mongodb与关系型数据库概念类比
SQL术语/概念 |
MongoDB术语/概念 |
解释/说明 |
---|---|---|
database |
database |
数据库 |
table |
collection |
数据表/集合 |
row |
document |
数据记录行/文档 |
column |
field |
数据字段/域 |
index |
index |
索引 |
tablejoins |
表连接,MongoDB不支持 |
|
primary key |
_id |
主键,MongoDB自动将_id字段设置为主键 |
文档与记录行的区别
- 文档是无模式的,即第一条记录5个字段,第2条记录可能是2个字段。且字段名称可能完全不一样 RDBMS记录行是预先定义好的格式,必须按照规定格式存储。
- 文档的结构是可以嵌套的
{
item: "ABC1",
details: {
model: "14Q3",
manufacturer: "XYZ Company"
},
stock: [ { size: "S", qty: 25 }, { size: "M", qty: 50 } ],
category: "clothing"
}
MongoDB数据类型
- MongoDB的文档类似于JSON的格式,与javascript对象神似 Json包含6中数据类型,只有null、布尔、数字、字符串、数组、对象这几种数据类型.JSON中没有日期类型,只有一种数字类型,没办法区分整形和浮点数,不能区分32位和64位。
- MongoDB数据类型 MongoDB保留了JSON的键值特性,添加了一些其他的数据类型。 数据类型 描述 null 用于表示空值获不存在字字段 32位整形,64位整形,64位浮点数 javascript中只有一种数字类型,而MongoDB中有上面3中类型,默认情况下shell的数字都被MongoDB当作双精度。在shell下修改文档中的32位整形,也会被转换为64位浮点数。所以尽量不要在shell下面修改文档 字符串 UTF-8字符串数据 ObjectId MongoDB中存储的文档必须有一个“_id”,这个键可以是任何值,但必须唯一 日期 var d=new Date() 正则表达式 采用javascript的正则表达式语法 函数 可以包含javascript代码,如 {a:function(){……}} 二进制 shell脚本中无法使用,通过其他语言驱动 最大值and最小值 是BSON中的特殊类型分别表示可能的最大最小值,int.MaxValue, int.MinValue 未定义 undefined,在javascript中null和undefined是不同的类型 数组 值的集合表示为数组。同json数组一样,数组是一组值,数组中可以包含不同的数据类型的对象,甚至是嵌套数组 内嵌文档 内嵌文档就是把整个MongoDB文档当作另一个文档中键的值。
CRUD基础操作
>use foo #新建数据库,如果只执行这条命令而不插入数据,则不会建立成功#
>db #显示当前使用的数据库#
>db.fooCollection.insert({name:"luonanqin"}); #fooCollection为collection的名字,insert表示插入操作#
>show collections #显示数据库中所有的集合
>db.fooCollection.find(); #查询fooCollection中所有的数据#
{ "_id" : ObjectId("51bd9b84f5a86f460f74659a"), "name" : "luonanqin" }
>db.abc.update({"_id" : ObjectId("51bd9b84f5a86f460f74659a")},{$set: {name:"luonanqin2"}}); #更新name的值为luonanqin2#
>db.abc.remove({name:"luonanqin2"});
>show collections #显示数据库中所有的集合
>db.abc.drop() #drop数据库
>db.help()
喜欢 (1)or分享 (0)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- vscode .vue文件格式配置 使其与webstorm设置一致
- Go 语言学习之 slice
- koa2实现微信公众号关注自动回复消息
- 两个字数字字符串求和
- 设计模式(二):Android 源码中的工厂模式
- MoveIt!之ROS1Melodic版本发布(MoveItCpp教程)
- 机器学习第1天:线性回归(代码篇)
- PHP二分查找
- OnClick 的另一种书写
- JVM系列之:JIT中的Virtual Call
- 速读原著-UnixLinux基础(五)
- Celery在Django中的简单应用
- 基于数据库Binlog 的业务系统操作日志实现方案(阿里中间件Canal)
- 速读原著-UnixLinux基础(三)
- 手撸实现UDP和TCP通信