MongoDB

数据库(database)是一种存储和操作数据的进程或服务,和excel等数据管理软件相比,数据库是面向其他软件的服务。

传统的数据库:sql server,mysql,oracle,属于关系型数据库,使用SQL(结构化查询语句),进行数据库操作。

文档型数据库,是一种nosql数据库,不使用sql语言进行数据库操作。

mongoDB就是一种文档型数据库。

---------------------------------------------------------------

mongodb作为进程启动,命令是

1, cd到bin目录下

2, 执行命令  mongod --dbpath xxxxxxxxxx

xxxxxxxxxx是数据库数据的存放路径(不能有空格和中文)

---------------------------------------------------------------

mongodb安装为服务,命令是

1,先cd到bin目录下,

2,执行命令    mongod --dbpath xxxxxxxxxx --logpath yyyyyyyyy --install

---------------------------------------------------------------

mongodb使用js进行数据库操作。

mongodb基本操作命令:

show dbs

显示所有数据库。一个数据文件夹下可以创建多个数据库。

use xxx

切换到某个数据库,如果xxx数据库不存在则会创建并切换。

show collections

显示当前数据库下所有的数据集合(表)。

db是一个全局对象,表示当前数据库

db.createCollection("xxx")

在当前数据库下创建一个数据集合(表)。

-------------------------------------------

db.表名.insert({...});

在表中插入一条数据,数据是一个对象。

-------------------------------------------

db.表名.find();

查询某个表中的所有数据

db.表名.find({条件})

条件查询

db.表名.find({name:"孙化育"})

查询表中所有名字是"孙化育"的数据。

db.表名.find({name:/^孙/})

查询所有姓孙的人的数据

db.表名.find({age:20,name:/^王/})

查询年龄20岁并且姓王的人

db.表名.find({$or:[{age:20},{name:/^王/}]})

查询年龄20岁或者姓王的人

db.表名.find({age:{$lt:50}})

查询年龄小于50的人,$lte表示小于等于,$gt表示大于,$gte表示大于等于。

db.表名.find(条件,{name:1,age:1})

只查询表中符合条件的数据的name列和age列。

db.表名.find(条件).count()

查询表中符合条件的数据的条数

db.表名.find(条件).sort({age:1})

将查询结果按照age升序排列,age:-1表示降序排列

db.表名.find(条件).skip(20).limit(10);

从查询结果中跳过20条,取之后的10条。

---------------------------------------------------

db.表名.remove({age:13});

删除表中年龄为13岁的人(删除一般以主键为条件)

--------------------------------------------------

db.表名.update({name:"sunwukong"},{$set:{age:200}})

将表中姓名为sunwukong的人的年龄改为200,第三个参数是一个对象,其中设置multi属性为true可以修改多条。

你可能感兴趣的:(MongoDB)