mongo操作
Posted 起帆的岛
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mongo操作相关的知识,希望对你有一定的参考价值。
1.创建数据库
语法:use database
说明:如果database不存在,就会创建database;如果存在就会切换到database
2.查看所有数据库
语法:show dbs;
说明:如果刚创建了db1,db1里面没有数据,那么使用show dbs ,不会显示出来db1.得先往db1里面插入一条数据
3.mongoDB默认的数据库是test,如果没有创建数据库,则默认放在test里面
4.删除数据库
语法:db.dropDatabase();
说明:如果删除db1,则需要先进入db1,use db1;然后才能执行 db.dropDatabase(),删除db1
5.删除集合collection
语法:db.collection.drop();
说明:举例?
6.向集合中插入文档
(1)
语法:db.COLLECTION_NAME.insert(); db.COLLECTION_NAME.insert();
说明:如果集合不存在,则mongo会自动创建该集合,并插入文档。mongoDB会自动生成_id字段
举例:db.first_col.insert({name : "lvyf" , sex : "M" , age : 23});
(2)另一种插入语法
先定义一个document
document = {name : "lvyf" , sex : "M" , age : 24}
执行插入操作
db.first_col.insert(document);
(3)save 和 insert 的区别
如果不指定 _id 字段,那么save和insert方法一样,插入,自动生成_id字段;
如果指定 _id 字段,那么save方法则会更新该 _id 的数据
7.更新文档
语法:db.collection_name.update(
<query>,
<update>,
{
upsert:<boolean>,
multi:<boolean>,
writeConcern:<document>
}
);
说明:<query> ,相当于sql update 时的 where
<update> , 类似于 sql 中 update 的 set
upsert , 可选,指定,如果query的记录不存在的时候,是否进行插入操作,默认false
multi , 可选 , 是否只更新第一条,默认是false,更新所有的
举例:
先插入一条记录
db.first_col.insert({name : "lvyf" , sex : "M" , age : 23 });
更新
db.first_col.update(
{name : "lvyf"} ,
{ $set: {age : 27} },
{ true, true }
);
8.删除文档
语法:db.collection_name.remove(
<query>,
{
justOne : <boolean>,
writeConcern : <document>
}
)
说明:query , 删除的文档的条件
justOne , 如果是true或者1 , 则只删除一天记录
writeConcern , 抛出异常的级别
举例:db.first_col.remove({name:"lvyf"} , {true}); ??
以上是关于mongo操作的主要内容,如果未能解决你的问题,请参考以下文章