1 | const mongoose = require('mongoose'); |
连接数据库
mongoose.connect(uri, options);
ip:端口:数据库名1
mongoose.connect('mongodb://localhost:27017/test', {useNewUrlParser: true, useUnifiedTopology: true});
连接数据库的options
type 类型有
leixing | zuoyong |
---|---|
String | 定义字符串 |
Number | 定义数字 |
Date | 定义时间 |
Buffer | 定义二进制 |
Boolean | 定义布尔值 |
Mixed | 定义混合类型 |
ObjectId | 定义对象ID |
Array | 定义数组 |
Decimal128 | 定义字符串 |
Map | 定义字符串 |
Schema | 定义字符串 |
定义表的结构
1 | const schema = new Schema({ |
定义之后需要添加字段 用 add()
1 | var schema = new Schema() |
保存数据
· save Model.prototype.save([options], [options.safe], [options.validateBeforeSave], [fn])
1 | let scoreModel = mongoose.model('score',schema) |
. create Model.create(doc(s), [callback])
1 | let scoreModel = mongoose.model('score',schema) |
.insertMany
1 | let scoreModel = mongoose.model('score',schema) |
查询数据
- Model.find(conditions, [projection], [options], [callback]);
1 | scoreModel.find({name:/cd/},{name:1},(err,docs)=>{ |
Model.findById(id, [projection], [options], [callback])
1
2
3
4
5
6
7scoreModel.find({name:/cd/},{name:1},(err,docs)=>{
if (!err) {
console.log(docs,'?????')
}else{
console.log(err)
}
})$where 可以使用任意的 JavaScript 作为查询的一部分,包含JavaScript 表达式的字符串或者函数
1
2
3
4
5scoreModel.find({$where:"this.name == obj.name" || "this..score == obj.score"},(err,doc) => {
if(!err){
console.log(doc)
}
})