為什么使用數據庫
- 動態數據網站中的數據都是存儲在數據庫中的
- 數據庫可以用來持久存儲客戶端通過表單收集的用戶信息
- 數據庫軟件本身可以對數據進行高效的管理
什么是數據庫
數據庫即存儲數據的倉庫,可以將數據進行有序的分門別類的存儲。它是獨立於語言之外的軟件,可以通過API去操作它。
常見的數據庫軟件有:mysql、MongoDB、Oracle
MongoDB數據庫的下載與安裝
下載網址:https://www.mongodb.com/download-center/enterprise
在下載並且安裝完成還需要安裝MongoDB可視化軟件
MongoDB可視化軟件的下載地址:https://www.mongodb.com/download-center/compass
安裝完成可視化軟件后點擊connect按鈕即可
MongoDB可視化軟件
MongoDB可視化操作軟件,是使用圖形界面操作數據庫的一種方式
數據庫概念:
在一個數據庫軟件中可以包含多個數據庫倉庫,在每一個數據倉庫中可以包含多個數據集合,每一個數據集合可以包含多條文檔(具體的數據)。
術語 | 解釋說明 |
database | 數據庫,mongoDB數據庫中可以建立多個數據庫 |
collection | 集合,一組數據的集合,可以理解為JavaScript中的數組 |
document | 文檔,一條具體的數據,可以理解為JavaScript中的對象 |
field | 字段,文檔中的屬性名稱,可以理解為JavaScript中的對象屬性 |
數據庫的連接:
初始化一個項目:
需要使用node.js操作MongoDB數據庫需要依賴node.js中的第三方包mongoose
使用npm inatall mongoose命令下載
如果數據庫不能連接,可能是由於沒有啟動MongoDB
解決辦法:在管理員命令工具運行指令net start mongoDB 即可啟動MongoDB,否則MongoDB將無法連接。
使用mongoose提供的connect方法即可連接數據庫:
// 引入mongoose第三方模塊 用來操作數據庫 const mongoose = require('mongoose'); // 數據庫連接 mongoose.connect('mongodb://localhost/play') // 連接成功 .then(() => console.log('數據庫連接成功')) // 連接失敗 .catch(err => console.log(err, '數據庫連接失敗'));
運行該腳本:
若不想出現那么多的提示可以在根據提示在代碼這里添加:
mongoose.connect('mongodb://localhost/play', { useNewUrlParser: true})
添加之后的結果:
創建數據庫
在MongoDB中不需要顯示的創建數據庫,如果正在使用的數據庫不存在,mongodb會自動的創建數據庫
創建集合
創建集合分為兩步,一是對集合設定規則,二是創建集合,創建mongoose.Schema構造函數的實例即可創建集合
//設定集合規則
const courseSchema=new mongoose.Schema({ name:String, author:String, isPublished:Boolean }); //創建集合並應用規則 const Course=mongoose.model('Course',courseSchema);
創建文檔
創建文檔實際上就是向集合中插入數據
分為兩步:
1、創建集合實例。
2、調用實例對象下的save方法將數據保存到數據庫中。
// 創建文檔 const course = new Course({ name: 'node.js基礎', author: '黑馬講師', isPublished: true }); // 將文檔插入到數據庫中 course.save();
MongoDB數據庫的結果: