Mongodb资本操作CURD(二)

Mongodb资本操作CURD(二)

一、库基本操作

  1. 查看当前数据库:show dbs
  2. 选择数据库:use dataBaseName
  3. 创建数据库,mongodb数据库是隐式创建,可以use一个不存在的库,然后在该库下创建表格collection。
  4. 创建数据表格:db.createCollection('collectionName');
  5. 创建数据表格支持隐式创建:db.collectionName.insert(document);
  6. 查看当前数据库下的collection:show collections
  7. 删除collection:db.mytest.drop()
  8. 删除数据库:删除数据库默认删除当前use选中的数据库。db.dropDatabase();

二、数据CURD操作

增:insert(mongodb存储的是文档,文档格式是json对象。所以操作的每条数据称为每篇文档。)

  1. 增加单篇文档:给user表增加一条数据,没有指定ID,系统会自动生成一个ID。


  2. 增加单篇文档,同时指定id。

  3. 增加多篇文档,将多个json对象放在一个数组里,实现同时添加多篇文档。


删 remove

语法:db.collectionName.remove(查询表达式,选项);

查询表达式:是json对象

选项:{justOne:true/false}是否只删除一行,默认为false

  1. 删除user表中ID为2的数据

  2. 删除user表匹配age为1文档有多篇,且只删除1篇

改 update

语法:db.collection.update(查询表达式,新值,选项)

选项:{upsert:true/false} 是指没有匹配的行,则直接插入改行。

            {multi:true/false}是指表达式匹配到多行时,修改多行时默认只修改1行。如果想修改多行可以用此选项。

  1. 将user表中name为hunan的改成huanan发现age属性没有了。(原因是新文档直接替换了旧文档,不是修改操作。)

  2. 修改某列的值,可以用$set。将name为huangsha的属性改为changsha

  3. 删除某个列:$unset  将age列删除

  4. 重命名某个列:$rename 将user表的xh字段名称改为xuehao

  5. 增涨某个列 $inc 将user表age属性增加3

  6. upsert参数:是指没有匹配的行,则直接插入该行。user表中没有name为haha的数据,则直接插入name为heiehi数据

  7. multi参数:将sex为女匹配到的多个数据,同时修改为男

  8. 当upsert为true时,并且发生了insert操作,可以同时增加字段。将user表name为bukong的数据增加一个sex字段


查:find

语法:db.collection.find(查询表达式,查询的列)

  1. 查询所有内容:db.user.find()
  2. 查询所有文档包含age属性的数据 db.user.find({},{age:1})
  3. 查询所有文档的age属性,且不查询_id属性  db.user.find({},{age:1,_id:0})
  4. 查询所有age属性值为10的文档中的name属性  db.user.find({age:10},{name:1,_id:0})

猜你喜欢

转载自blog.csdn.net/m0_38039437/article/details/80165439