MongoDB的数据库和集合的基础操作

原创 2016年08月31日 16:51:54

启动MongoDB的服务

sudo service mongodb start

进入MongoDB命令行操作界面

mongo

显示数据库列表

show dbs

切换当前数据库(创建数据库)

use [database_name]

删除当前数据库

db.dropDatabase()

显示当前数据库中的集合

show collections

创建集合

db.createCollection("BizUser")

创建集合(带初始化参数)

  • capped:类型为boolean,如果为true则为创建一个固定大小的集合,当集合中的数据条目达到最大时自动覆盖以前的条目。
  • autoIndexID:类型为boolean,默认为false,如果设置为true,则会在_id上创建索引。
  • size:指定集合字节最大值,当capped为true时需要指定。单位为byte
  • max:指定集合中数据的最大条数。
db.createCollection(
    "BizUser",
    {capped:1,autoIndexID:1,size:6142800,max:10000}
)

删除集合,下面代码是删除BizUser集合的示例

db.BizUser.drop()

添加与修改操作

向集合中插入数据,insert与save都是向集合汇总插入数据。如果新增的数据中有主键,并且重复,则使用insert会报错,但是save会更改原来的数据。下面代码是向BizUser集合中插入数据的示例

db.BizUser.insert([{name:"user1",password:"123456"},{name:"user2",password:"123"}])

db.BizUser.save([{name:"user1",password:"123456"},{name:"user2",password:"123"}])

也可以先定义文档再往集合中插入

user1=({name:"user1",password:"111"})
db.BizUser.insert(user1)

更新文档,下面代码是把name为user1的第一条文档更新为{name:”cx”,age:22}

db.BizUser.update({name:"user1"},{name:"cx",age:22})

如果只是需要设置文档里的指定的一些域的值,则需要加$set关键字,下面代码是把name为user1的第一条文档的age值更更新为22,sex的值更新为”M”

db.BizUser.update({name:"user1"},{$set:{age:22,sex:"M"}})

如果是要更新所有符合查询条件的文档,则需要加上multi:true,下面代码是把所有age为22的文档中的age的值改为23

db.BizUser.update({age:"22"},{$set:{age:23}})

查询操作

查看集合下的数据,不带任何参数则默认返回所有的数据

db.BizUser.find()

使用pretty()方法使显示的结果更美观

db.BizUser.find().pretty()

查询中的AND,在find()中传入多个键值对时,即会当作AND查询处理。下面代码是在BizUser集合中查找age为18并且sex为“M”的数据

db.BizUser.find({age:"18",sex:"M"})

查询中的OR,M哦能够DB中,OR查询语句以$or作为关键词。下面代码是在BizUser集合中查找age为18或者age为19的数据

db.BizUser.find(
    {
        $or:[
            {age:"18"},
            {age:"19"}
        ]
    }
)

同时使用AND和OR,下面代码是在BizUser集合中查找sex为“F”,并且age大于30或者name等于user1的数据。
$gt表示大于、$lt表示小于、$le表示小于等于、$ge表示大于等于、$ne表示不等于)

db.BizUser.find(
    {
        sex:"F",
        $or:[
            {age:{$gt:30}},
            {name:"user1"}
        ]
    }
)

条件操作符1

  • $gt表示大于
  • $lt表示小于
  • $ge表示大于等于
  • $le表示小于等于
  • $ne表示不等于
db.BizUser.find({age:{$le:22}})

条件操作符2($type)
type的值:
- 1-双精度
- 2-字符串
- 3-对象
- 4-数组
- 5-二进制数据
- 7-对象ID
- 8-布尔类型
- 9-数据
- 10-空
- 11-正则表达式
- 13-JS代码
- 14-符号
- 15-有作用域的JS代码
- 16-32位整型数
- 17-时间戳
- 18-64位整型数
- 255-Min key
- 127-Max key

下面代码是查询name的类型为字符串的数据

db.BizUser.find({name:{$type:2}})

limit读取指定数量的数据记录,下面代码是读取BizUser集合中前10条记录

db.BizUser.find().limit(10)

skip读取时跳过指定数量的数据记录,下面代码是读取BizUser集合中第6条到第15条记录

db.BizUser.find().limit(10).skip(5)

sort对查询的结果进行排序,下面代码是读取BizUser集合中的数据,并按照age进行升序排序

  • 1表示升序
  • -1表示降序
db.BizUser.find().sort({"age":1})

删除操作

使用remove()进行删除,下面代码是删除集合中name为user1的文档

db.BizUser.remove({name:"user1"})

深入理解python元类

类和对象在理解什么是元类之前,有必要先理解下,什么是类。 什么是类?通俗的讲,类就是用来创建对象的代码片。在python中,类还有一个奇特的特性,就是类,本身也是一个对象。怎么理解?——在你定义一个类...

MongoDB在windows安装以及基本命令操作

安装安装包下载地址:http://download.csdn.net/detail/superjunjin/9676074 解压到本地就可以了基本命令在解压好的文件夹下新建文件夹/data/db操作...

MongoDB数据库操作和程序基础文档

数据库常用操作命令 Bin\mongod run 启动数据库服务端。 bin\mongod.exe --dbpath d:\data\mongo 启动数据库服务端并且将数据库目录设定在该地址下...

MongoDB数据库基础操作

为了保存网站的用户数据和业务数据,通常需要一个数据库。MongoDB和Node.js特别般配,因为Mongodb是基于文档的非关系型数据库,文档是按BSON(JSON的轻量化二进制格式)存储的,增删改...

mongodb操作--文档、集合、数据库、shell

MongoDB中的集合类似于关系型数据库中的表,mongodb中的文档类似于关系型数据库中的行。关系型数据库中的一条记录就是一个文档,是一个数据结构,由field和value对组成。MongoDB文档...

Mongodb从0到1系列二:数据库与集合操作、文档增删改查

Mongodb从0到1系列一:下载、安装、启动、停止 3. 数据库与集合操作 数据库与集合的创建、查看、删除操作 在mongodb server启动之后,打开一个mongo shell. 3.1...

mongodb数据库的基本操作

  • 2014年06月14日 16:07
  • 2.03MB
  • 下载

java操作MongoDB数据库代码实例

  • 2014年04月01日 17:07
  • 2.65MB
  • 下载

Mongodb数据库DBObject对象和Json数据的转化(用Gson操作)

Mongodb数据库DBObject对象和Json数据的转化(一.用Gson操作) 转自:http://zyjustin9.iteye.com/blog/2018699   by ...
  • csummm4
  • csummm4
  • 2014年04月09日 22:49
  • 1709
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:MongoDB的数据库和集合的基础操作
举报原因:
原因补充:

(最多只允许输入30个字)