Appearance
MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的,也就是说它本质上是一个NoSQL
数据库
它支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。
管理逻辑库
逻辑库相当于MySQL的数据库。
- 创建/切换逻辑库:
use test
- 查看逻辑库:
show dbs
- 删除逻辑库:
db.dropDatabase()
管理集合
集合相当于MySQL的表。
- 创建集合:
db.createCollection("集合名")
- 查看集合列表:
show collections
- 删除集合:
db.集合.drop()
- 查看集合中记录数量:
db.集合.count()
- 查看数据空间容量:
db.集合.dataSize()
- 重命名集合:
db.集合.renameCollection("")
添加记录:
javascript
db.student.save([
{name:"zhangsan",age:19},
{name:"lisi",age:20},
{name:"王昭",age:20},
])
MongoDB中的主键
在集合中,文档之间都是松散,没有统一的字段约束。为了标识文档的唯一性,MongoDB为每个文档都添加了主键字段( id)。
这个主键中包含着添加的时间戳,MongoDB存储日期都会自动转换成格林尼治时间,ObjectID字段并包含了时间戳,可以提取出记录保存的时间。
javascript
ObjectId("63b94be24f1471e8e49de408").getTimestamp() // 返回:ISODate("2023-01-07T10:39:30Z")