MongoDB
数据库语句
注:(在 MongoDB 默认数据库测试。如果没有创建任何数据库,然后集合将被存储在测试数据库。)
1、 创建数据库
use DATABASE_NAME
2、 检查数据库列表
3、 删除数据库
db.dropDatabase()
集合操作
1、 创建集合
db.createCollection(name, options)
Name String 要创建的集合名称
Options Document (可选)指定有关内存大小和索引选项
2、 删除集合
db.COLLECTION_NAME.drop()
文档操作
1、 插入文档
db.COLLECTION_NAME.insert(document)
例如:
db.mycol.insert({
_id: ObjectId(df78ad8902c),
title: 'MongoDB Overview',
description: 'MongoDB is no sql database',
by: 'tutorials yiibai',
url: 'http://www.yiibai.com',
tags: ['mongodb', 'database', 'NoSQL'],
likes:
})
2、 查询文档
* find()方法:
find() 方法将在非结构化的方式显示所有的文件。
db.COLLECTION_NAME.find()
-
pretty() 方法
结果显示在一个格式化的方式,可以使用 pretty() 方法
db.mycol.find().pretty()
- 例子
db.mycol.find().pretty()
{
"_id": ObjectId(df78ad8902c),
"title": "MongoDB Overview",
"description": "MongoDB is no sql database",
"by": "tutorials yiibai",
"url": "http://www.yiibai.com",
"tags": ["mongodb", "database", "NoSQL"],
"likes": "100"
}
*除了find() 方法外,还有一个 findOne() 法,返回一个文件。
*AND 在MongoDB中用法
在 find() 方法,如果通过多个键分离’,’,那么 MongoDB 处理 AND 条件。AND 基本语法如下所示
db.mycol.find({key1:value1, key2:value2}).pretty()
-
MongoDB中OR
OR条件的基础上要查询文件,需要使用or关键字。OR 基本语法如下所示:
db.mycol.find(
{
$or: [
{key1: value1}, {key2:value2}
]
}
).pretty()
3、MongoDB 更新文档
MongoDB的 update() 和 save() 方法用于更新文档的集合。 update()方法更新现有的文档值,而替换现有的文档通过的文件中 save() 方法。
*update()方法更新现有文档值。
db.COLLECTION_NAME.update(SELECTIOIN_CRITERIA, UPDATED_DATA)
例子:
MongoDB默认将只更新单一的文件,来更新多个你需要设置参数置’multi’ 为true
*save() 方法替换现有的文档和通过新的文档 save() 方法
db.COLLECTION_NAME.save({_id:ObjectId(),NEW_DATA})
例子:
db.mycol.save(
{
"_id" : ObjectId(adf45ec7), "title":"Yiibai New Topic", "by":"Yiibai"
}
)
3、MongoDB 删除文档
*remove() 方法
MongoDB的 remove() 方法用于从集合中删除文档。remove() 方法接受两个参数。第一个是删除criteria ,第二是justOne标志:
deletion criteria :(可选)删除标准,根据文件将被删除。
justOne : (可选)如果设置为true或1,然后只删除一个文件。
例子:
db.mycol.remove({'title':'MongoDB Overview'})
*删除只有一个
如果有多个记录且要删除的只有第一条记录,那么设置remove()方法中justOne参数
db.COLLECTION_NAME.remove(DELETION_CRITERIA,)
*删除所有文件
如果不指定删除条件,然后MongoDB将从集合中删除整个文件。这相当于SQL的truncate命令。
db.mycol.remove()