数据库操作
- 开机
mongod --dbpath
数据存放的路径(某个用于存放数据的文件夹) - 使用数据库
mongo
(重开一个终端) - 导入数据
mongoimport
- 列出所有数据库
show dbs
- 使用/创建 数据库
use xxx
- 查看当前所在数据库
db
- 显示当前数据库中的集合
show collections
数据增删改查
1. 插入数据
- 插入一条数据(随着具体数据的插入,该数据库才是创建成功)
db.tmp.insert({"name": "xxx"})
- 不可能每条数据都是手动插入,所以可在外部写好数据库的形式再导入具体数据库
mongoimport --db item--collection tmp--drop --file D:\Users\xxx\xxx\xxx.json
--db item
要导入进数据的数据库
--collection tmp
要导入金数据的数据库的具体集合
--drop
将item中数据清空
--file xxx.json
外部写好数据的文件
2. 删除数据
- 删除数据库(删除当前所在的数据库)
db.dropDatabase()
- 删除集合
db.tmp.drop()
- 删除文档 (删除所有数据,但是集合自身还在,为null)
db.tmp.remove()
- 删除文档 (删除所有name为Json的数据)
db.tmp.remove({"name":"xxx"})
- 删除文档 (删除第一个name为Json的数据)
db.tmp.remove({"name":"xxx"},{justOne:true})
3. 修改数据
- 将第一个 id 为 9999 的数据 的 age 改为 100
db.tmp.update({"id":"9999"},{$set:{"age":10}})
- 将所有 sex 为男的数据 的 age 改为 100
db.tmp.update({"sex": "男"}, {$set: {"age": 10}}, {multi:true})
- 完整替换/重写 (不出现 $set 关键字即可)
db.tmp.update({"id": "9999"}, {"name": "ccc", "age":10})
- 数据库中的一条记录的数据中增加数据的方法
db.tmp.update({"id": "9999"}, {$addToSet:{comment: {"name" : "xxx", "sex" : "xxx", "age" : "xxx"}}})
4. 查询数据
- 查找数据库 (已经进入到某个具体的数据库)
use item
进入数据库
show collections
列出集合 - 查找数据库中所有的数据
db.tmp.find()
db.getCollection('add').find()
- 精确匹配
db.tmp.find({"name":"xxx"})
- 多个条件
db.tmp.find({"name":"xxx","age":10})
- 大于条件
db.tmp.find({"age":{$gt:20}})
- 或者
db.tmp.find({$or:[{"age":10},{"age": 100}]})
- 排序
db.tmp.find().sort({"age": 1})
- MongoDB 安装即基本使用,可参考 MongoDB 数据库安装及基本使用
- MongoDB DOA 层封装,可参考 一图理解 Node.js 访问 MongoDB DAO层封装
- MongoDB 敏感数据加密,可参考 如何用MD5加密数据库的敏感数据 ?
- 前端后台到数据库操作,可参数 一个简单的 HTML + Node.js + MongoDB数据交互