A Natural Language Interface for Querying General and Individual Knowledge論文學習
阿新 • • 發佈:2021-10-15
官網地址:http://www.mongoosejs.net/
基本使用
我們先建立一個models的資料夾
安裝mongoose:
npm install --save mongoose
首先建立一個schema
model資料夾內部建立一個Dogs.js檔案
//Dog.js檔案 var mongoose = require("mongoose"); // 建立schema,建立資料庫表的表頭 var dogSchema = new mongoose.Schema({ "color" : String, "name": String, "age" : Number, "sex" : String }); // 建立model,其實底層就是在建構函式 var Dog = mongoose.model("Dog",dogSchema); // 向外暴露 module.exports = Dog;
app.js
var mongoose = require("mongoose"); // 連線資料庫 mongoose.connect("mongodb://localhost/study"); // 連線我們要使用的model var Dog = require("./models/Dog.js"); var xiaobai = new Dog({ "id": 1, "name": "大黃", "age": 8, "sex": "男" }) //save() 是 Mongoose documents 上的一個方法。save() 方法是非同步的,因此它返回一個可以 await 執行的 Promise。 xiaobai.save(function(err){ if(!err){ console.log("插入成功") } })
檢視當前資料庫下的表
檢視插入的資訊
資料庫中的表會自動幫你轉義,比如我們建的名字是dog會幫你加s,為dogs
基本操作-增加
第一種方法
var mongoose = require("mongoose"); // 連線資料庫 mongoose.connect("mongodb://localhost/study"); // 連線我們要使用的model var Dog = require("./models/Dog.js"); Dog.create({ "id": 2, "name": "大黃的兒子", "age": 2, "sex": "男" },function (err) { if(!err){ console.log("插入成功") } })
第二種方法
var dahuang= new Dog({ "id": 3, "name": "大黃的女兒", "age": 2, "sex": "女" }) xiaobai.save(function(err){ if(!err){ console.log("插入成功") } })
基本操作-刪除
第一種方法
var mongoose = require("mongoose"); // 連線資料庫 mongoose.connect("mongodb://localhost/study"); // 連線我們要使用的model var Dog = require("./models/Dog.js"); Dog.remove({"name":"大黃"},function(err){ if(!err){ console.log("刪除成功") } })
第二種方法
var mongoose = require("mongoose"); // 連線資料庫 mongoose.connect("mongodb://localhost/study"); // 連線我們要使用的model var Dog = require("./models/Dog.js"); Dog.remove({"name":"大黃"},function(err,result){ resolve[0].remove(function(err){ if(!err){ console.log("刪除成功") } }) })
基本操作-修改
第一種方法
var mongoose = require("mongoose"); // 連線資料庫 mongoose.connect("mongodb://localhost/study"); // 連線我們要使用的model var Dog = require("./models/Dog.js"); Dog.update({"name":"大黃的兒子"},{"$set":{"name":"大黃的老婆"}},function(err,result){ if(!err){ console.log("修改成功") } })
第二種方法
var mongoose = require("mongoose"); // 連線資料庫 mongoose.connect("mongodb://localhost/study"); // 連線我們要使用的model var Dog = require("./models/Dog.js"); Dog.find({"name":"大黃的兒子"},function (err,results) { // 返回的是一個數組 var temp = results[0]; // 修改獲取的這一項內容進行修改 temp.name = "大黃的老婆"; // 修改完畢後進行儲存 temp.save(function (err) { !err && console.log("修改成功") }) })
基本操作-查詢
var mongoose = require("mongoose"); // 連線資料庫 mongoose.connect("mongodb://localhost/study"); // 連線我們要使用的model var Dog = require("./models/Dog.js"); Dog.find({},function (err) { !err&&console.log("查詢成功") })