4.MongoDB 数据库操作
1.MongoDB 数据库操作
(1) 选择和创建数据库的语法格式:
1 | > use [database] |
若数据库存在则时选择,若数据库不存在,则新建数据库
数据库名命名规则:
- 不能是空字符串(“”)。
- 不得含有空格,
.
,$
,/
,\
和\0
(空字符) - 应全部小写
- 最多64字节
1 | > use articledb |
(2) 查看有权限查看的所有的数据库命令:
1 | > show dbs |
或
1 | > show databases |
MongoDB 中默认的数据库为 test,如果你没有选择数据库,集合将存放在 test 数据库中。
1 | > db |
1 | > db |
(3) 特殊的数据库
有一些数据库名是保留的,可以直接访问这些有特殊作用的数据库
- admin: 从权限的角度来看,这是”root”数据库。要是将一个用户添加到这个数据库,这个用户自动继承所有数据库的权限。一些特定的服务器端命令也只能从这个数据库运行,比如列出所有的数据库或者关闭服务器。
- local: 这个数据永远不会被复制,可以用来存储限于本地单台服务器的任意集合
- config: 当Mongo用于分片设置时,config数据库在内部使用,用于保存分片的相关信息。
(4) 删除数据库
语法: db.dropDatabase()
1 | > db |
2.集合操作
(1) 集合的显式创建
语法: db.createCollection([collection_name])
1 | > db.createCollection("my_collection") |
集合的命名规范:
- 集合名不能是空字符串
""
- 集合名不能含有
\0
字符(空字符),这个字符表示集合名的结尾 - 集合名不能以”
system.
“开头,这是为系统集合保留的前缀 - 用户创建的集合名字不能含有保留字符。有些驱动程序的确支持在集合名里面包含,这是因为某些系统生成的集合中包含该字符。除非你要访问这种系统创建的集合,否则千万不要在名字里出现
$
(2) 集合的隐式创建
当向一个集合中插入一个文档的时候,如果集合不存在,则会自动创建集合
(3) 集合的删除
语法: db.[collection_name].drop()
1 | > db.my_collection.drop() |
返回值: 如果成功删除选定集合,则 drop() 方法返回 true,否则返回 false