MongoDB的安装与增删改查语句
2017-03-15 20:30
155 查看
课程设计老师要求项目需要用到NoSQL数据库,所以看了一点MongoDB的资料,安装的数据库版本为当前2017/03/15之前发布的最新版本3.4.2,安装文件在官网下载的mongodb-win32-x86_64-2008plus-ssl-3.4.2-signed.msi
首先双击安装包,选择customer指定自己自定义的安装路径.然后再在当前安装路径所处的盘符的根目录下建立data文件夹,再在data文件夹下建立db和dbConf两个文件夹.
在管理员权限的命令行下执行mongod.exe --logpath "C:\data\dbConf\mongodb.log" --logappend --dbpath "C:\data\db" --install将MongoDB作为系统服务运行,也可以指定端口号,指定服务名,多个MongoDB服务同时运行.
在MongoDB的安装目录下bin目录下的mongod.exe代表MongoDB的服务,其中d是daemon(守护进程)的英文缩写.MongoDB的默认端口是27017
插入文档语法格式:
db.COLLECTION_NAME.insert(document)
删除文档语法格式:
db.collection.remove(
<query>,
{
justOne: <boolean>,
writeConcern: <document>
}
)其中如果justOne为true则只删除一条文档,writeConcern :(可选)抛出异常的级别。(此处没理解)
例如删除title为csdn的文档:
db.col.remove({'title':'csdn'})
如果要删除此集合所有数据则可以用db.col.remove({})
更新文档语法:
①update方法更新已经存在的文档:
db.collection.update(
<query>,
<update>,
{
upsert: <boolean>,
multi: <boolean>,
writeConcern: <document>
}
)其中query : update的查询条件,类似sql update查询内where后面的。
update : update的对象和一些更新的操作符(如$,$inc...)等,也可以理解为sql update查询内set后面的
upsert : 可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。
multi : 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。
writeConcern :可选,抛出异常的级别。
②save()方法用于传入一个新的文档替换此文档:
db.collection.save(
<document>,
{
writeConcern: <document>
}
)
查询文档语句:
db.COLLECTION_NAME.find()
也可以以结构化易读形式查询文档语句:
db.COLLECTION_NAME.find().pretty()
MongoDB与sql数据库常见的比较关系对比:
多个查询条件(and)语句:db.col.find({key1:value1, key2:value2}).pretty()
多个查询条件语句(or):db.col.find(
{
$or: [
{key1: value1}, {key2:value2}
]
}
).pretty()
首先双击安装包,选择customer指定自己自定义的安装路径.然后再在当前安装路径所处的盘符的根目录下建立data文件夹,再在data文件夹下建立db和dbConf两个文件夹.
在管理员权限的命令行下执行mongod.exe --logpath "C:\data\dbConf\mongodb.log" --logappend --dbpath "C:\data\db" --install将MongoDB作为系统服务运行,也可以指定端口号,指定服务名,多个MongoDB服务同时运行.
在MongoDB的安装目录下bin目录下的mongod.exe代表MongoDB的服务,其中d是daemon(守护进程)的英文缩写.MongoDB的默认端口是27017
插入文档语法格式:
db.COLLECTION_NAME.insert(document)
删除文档语法格式:
db.collection.remove(
<query>,
{
justOne: <boolean>,
writeConcern: <document>
}
)其中如果justOne为true则只删除一条文档,writeConcern :(可选)抛出异常的级别。(此处没理解)
例如删除title为csdn的文档:
db.col.remove({'title':'csdn'})
如果要删除此集合所有数据则可以用db.col.remove({})
更新文档语法:
①update方法更新已经存在的文档:
db.collection.update(
<query>,
<update>,
{
upsert: <boolean>,
multi: <boolean>,
writeConcern: <document>
}
)其中query : update的查询条件,类似sql update查询内where后面的。
update : update的对象和一些更新的操作符(如$,$inc...)等,也可以理解为sql update查询内set后面的
upsert : 可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。
multi : 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。
writeConcern :可选,抛出异常的级别。
②save()方法用于传入一个新的文档替换此文档:
db.collection.save(
<document>,
{
writeConcern: <document>
}
)
查询文档语句:
db.COLLECTION_NAME.find()
也可以以结构化易读形式查询文档语句:
db.COLLECTION_NAME.find().pretty()
MongoDB与sql数据库常见的比较关系对比:
操作 | 格式 | 范例 | RDBMS中的类似语句 |
---|---|---|---|
等于 | {<key>:<value>} | db.col.find({"by":"菜鸟教程"}).pretty() | where by = '菜鸟教程' |
小于 | {<key>:{$lt:<value>}} | db.col.find({"likes":{$lt:50}}).pretty() | where likes < 50 |
小于或等于 | {<key>:{$lte:<value>}} | db.col.find({"likes":{$lte:50}}).pretty() | where likes <= 50 |
大于 | {<key>:{$gt:<value>}} | db.col.find({"likes":{$gt:50}}).pretty() | where likes > 50 |
大于或等于 | {<key>:{$gte:<value>}} | db.col.find({"likes":{$gte:50}}).pretty() | < 4000 code style="border:0px;margin:0px;padding:0px;">where likes >= 50 |
不等于 | {<key>:{$ne:<value>}} | db.col.find({"likes":{$ne:50}}).pretty() | where likes != 50 |
多个查询条件语句(or):db.col.find(
{
$or: [
{key1: value1}, {key2:value2}
]
}
).pretty()
相关文章推荐
- PHP简单操作MongoDB的方法(安装及增删改查)
- PHP简单操作MongoDB的方法(安装及增删改查)
- MYSQL的常用命令和增删改查语句和数据类型
- MYSQL的常用命令和增删改查语句和数据类型
- 黑马程序员---SQL语句(主要是增删改查)
- Java操作MongoDB之CRUD(增删改查)
- SQL语句的增删改查(详细)
- 增删改查语句练习
- SQL语句的增删改查(详细)
- l数据库基础前四章总结(增删改查基础命令语句的的使用)
- SQL语句(增删改查)
- MYSQL的常用命令和增删改查语句和数据类型
- SqlServer 中的增删改查语句的语法
- MySQL增删改查语句
- MySQL增删改查语句
- l数据库基础前四章总结(增删改查基础命令语句的的使用
- MYSQL的常用命令和增删改查语句和数据类型
- SQL语句的增删改查(详细)
- 使用abator自动生成增删改查语句
- MYSQL的常用命令和增删改查语句和数据类型