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操作的主要内容,如果未能解决你的问题,请参考以下文章

使用mongo命令工具操作集合数据

使用mongo命令工具操作集合数据

使用mongo命令工具操作集合数据

Mongo 基本操作

mongo基本操作

mongo 递归操作