数据库保存的格式是经过优化的文件
NoSql:数据多,读写多,没有行和列的概念,以JSON存储。
启动 mongodb 服务
mongod --dbpath C:\mongodb\mongodb-win32-x86_64-2008plus-ssl-4.0.16\bin
连接 本地Mongo 数据库
mongo
cmd基本操作
show dbs //看有哪些数据库
use shop //若shop数据库存在,则进入数据库
//若shop数据库不存在,此操作创建一个数据库名,并没有完全创建好数据库
db.product.insert({"title":"111","num":14}) //新建product表,现在shop数据库创建完成
show collections //看看在当前数据库下有什么表或集合
db.product.drop //删除product表,shop数据库里没有表了,shop就也被删除了
db.product.find() //查询product表中所有数据
use shop
db.dropDatabase() //数据库删除
db.product.find({"num":20}) //查询表中num等于20的
db.product.find({"num":{$gt:20}}) //查询表中num大于20的 gte大于等于
db.product.find({"num":{$lt:20}}) //查询表中num小于20的 lte小于等于
cls //清屏
db.product.find({"num":20},"title":"111"}) //查询表中num等于20,title=111的
db.product.find({"num":/20/}) //模糊查询含有20的
db.product.find({"num":/^20/}) //模糊查询以20开头的
db.product.find({},{num:1}) //只查num,其他默认为0
db.product.find({}).sort({"num":1}) //1是升序排列,-1是降序排列
db.product.find({}).limit(2) //只查符合条件的前两条
db.product.find({}).skip(2).limit(3) //跳过首2条后读取3条
在Node.js中使用Mongodb
npm install mongodb --save-dev
Mongoose--node限定
npm i mongoose --save
引入mongoose并连接数据库
const mongoose=require('mongoose')
mongoose.connect('mongodb://localhost:27017/要连接的数据库名')
//定义Schema,每个Schema会映射到mongodb中的一个表/collection
var UserSchema=mongoose.Schema({
name:String,
age:Number,
status:Number
})
//生成Model,model是由schema生成的模型,可以传2/3个参数,对数据库进行操作
var User=mongoose.model(首字母大写的模型名称User,定义的Schema,数据库集合名称)
//两个参数:这个model会和模型名称相同的复数的数据库建立连接
//三个参数:模型默认操作第三个参数定义的集合名称
User.find({},function(err,doc){
if(err) return
console.log(doc)
})