1. 程式人生 > 其它 >【演算法】計數排序(Counting Sort)(八)

【演算法】計數排序(Counting Sort)(八)

  • Mongoose是Nodejs的一個模組,這個模組可以操作MongoDB模組對資料庫的操作
  • Mongooose是一個物件文件模型(ODM)庫,它對Node原生的MongoDB模組進一步的優化封裝,並提供了更多的功能。
  1. Mongoose的好處
  • 可以為文件建立一個模式結構(約束)(Schema)
  • 可以對模型中的物件/文件進行驗證
  • 資料可以通過型別轉換為物件模型
  • 可以使用中介軟體來應用業務邏輯掛鉤
  • 比Node原生的MongoDB驅動更容易
  1. 新的物件
  • mongosoe中為我們提供了幾個新的物件
  1. Schema(模式物件)
  • Schema物件定義約束了資料庫中的文件結構
  1. Model
  • Model物件作為集合中的所有文件的表示,相當於MongoDB資料庫中的集合collection
  1. Document
  • Document表示集合中的具體文件,相當於集合中的一個具體的文件

Mongoose的初次使用

1.下載安裝Mongoose
  yarn add mongoose
2.引入mongoose
  const mongoose = require("mongoose")
3.連線MongoDB資料庫
  mongoose.connect('mongodb://資料庫ip地址:埠號/資料庫名',回撥)
    回撥會給你兩個引數 第一個是err就是連線失敗的訊息,第二個引數是db
    如果埠號是預設埠號(27017) 則可以省略不寫
4.斷開資料庫連線(一般不需要呼叫)
  mongoose.disconnect()

監聽MongoDB資料庫的連線狀態
  在mongoose物件中有一個屬性叫做connection,該物件表示的就是資料庫連線
    通過監視該物件的狀態,可以來監聽資料庫的連線與斷開
  資料庫連線成功的事件
    mongoose.connection.once("open", function() {})
  資料庫斷開的事件
    mongoose.connection.once("close", function() {})

向集合中插入文件

  const mongoose = require('mongoose')
  mongoose.connect('mongodb://127.0.0.1/mongoose_test', (err, db)=> {
    if(err) {
      console.error(err);
      return 0;
    }else {
      console.log('Connected correctly to server');
    }
  })

  mongoose.connection.once("open", ()=> {
    console.log('資料庫連線成功~~')
  })
  const Schema = mongoose.Schema;
  //建立Schema(模式)物件
  const stuSchema = new Schema({
    name: String,
    age: Number,
    gender: {
      type: String,
      default: "female"
    },
    address: String
  })

  // 通過Schema來建立Model
  // Model代表的是資料庫中的集合,通過Model才能對資料庫進行操作
  // mongoose.model(modelName, schema)
  // modelName 就是要對映的集合名 mongoose會自動將集合名變成複數
  let StuModel = mongoose.model('student', stuSchema)

  // 向資料庫中插入一個文件
  StuModel.create({
    name: "權權權",
    age: 17,
    gender: "male",
    address: "湖北黃石"
  }, (err)=> {
    if (!err) {
      console.log('插入成功!!')
    }
  })