MongoDB
2020-12-29 09:19:06 55 举报
AI智能生成
MongoDB
作者其他创作
大纲/内容
安装
linux
ubuntu
sudo apt-get install mongodb
centos
mac
https://www.mongodb.com/try#community
windows
https://www.mongodb.com/try/download/community
语法
区分类型和大小写
集合
集合名不能是空字符串""
集合名不能含有\0字符(空字符),这个字符表示集合名的结尾
集合名不能以"system."开头,这是为系统集合保留的前缀
用户创建的集合名字不能含有保留字符。有些驱动程序的确支持在集合名里面包含,这是因为某些系统生成的集合中包含该字符。除非你要访问这种系统创建的集合,否则千万不要在名字里出现$
集合只有在内容插入后才会创建。
文档
规范
文档中的键/值对是有序的
文档不能有重复的键
文档中的值不仅可以是在双引号里面的字符串,还可以是其他几种数据类型(甚至可以是整个嵌入的文档)
文档的键是字符串。除了少数例外情况,键可以使用任意UTF-8字符
键
规范
键不能含有\0 (空字符)。这个字符用来表示键的结尾。
.和$有特别的意义,只有在特定环境下才能使用。
以下划线"_"开头的键是保留的(不是严格要求的)。
数据类型
String
Integer
Boolean
Double
Min/Max keys
Array
Timestamp
Object
Null
Symbol
Date
Object ID
Binary Data
Code
Regular expression
运算符
命令
连接
mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]
参数
mongodb://
username:password@
host1
portX
/database
?options
connect=direct|replicaSet
replicaSet=name
slaveOk=true|false
safe=true|false
w=n
wtimeoutMS=ms
fsync=true|false
journal=true|false
connectTimeoutMS=ms
socketTimeoutMS=ms
typeof xx
类型语法
DOCUMENT
QUERY
UPDATE
OPTIONS
SQL
数据库
创建
# 1.
use db_name
# 2. 创建空集合 或 直接插入文档数据(会先创建集合)
use db_name
# 2. 创建空集合 或 直接插入文档数据(会先创建集合)
删除
db.dropDatabase()
查询
db
show dbs
集合
创建
db.createCollection(COLLECTION_NAME, OPTIONS)
db.createCollection("my_col", {capped : true, size : 6142800, max : 10000})
使用文档的插入方法
删除
db.collection.drop()
查询
show collections
show tables
文档
插入
db.COLLECTION_NAME.insertOne(DOCUMENT, OPTIONS)
db.my_col.insertOne(
{"a": "aaa", "bb": 100},
{ writeConcern: { w : "majority", wtimeout : 100 } }
);
{"a": "aaa", "bb": 100},
{ writeConcern: { w : "majority", wtimeout : 100 } }
);
db.COLLECTION_NAME.insertMany([DOCUMENT1, DOCUMENT2,...DOCUMENTn], OPTIONS)
过时的
db.COLLECTION_NAME.insert(DOCUMENT)
db.COLLECTION_NAME.save(DOCUMENT)
删除
db.COLLECTION_NAME.deleteOne(QUERY)
db.COLLECTION_NAME.deleteMany(QUERY)
db.my_col.deleteMany({})
过时的
db.COLLECTION_NAME.remove(QUERY, OPTIONS)
db.COLLECTION_NAME.remove(QUERY, justOne)
修改
db.COLLECTION_NAME.update(QUERY, UPDATE, OPTIONS)
db.COLLECTION_NAME.save(DOCUMENT, OPTIONS)
查询
pretty()
db.COLLECTION_NAME.find(QUERY, OPTIONS).pretty()
db.COLLECTION_NAME.find(QUERY, projection)
函数
配置文件
接口
0 条评论
下一页