【SRH】------node連線mongodb,實現增、刪、改、查功能
阿新 • • 發佈:2018-12-31
node連線mongodb
準備工作
1.在專案根目錄下
初始化倉庫,形成node包
npm init -y
2.下載mongodb包
cnpm install --save-dev mongodb
------------------------------------------------------------------------------------------------------------------------------------------------------------
node連線mongodb,實現增、刪、改、查功能
//引入伺服器(事先在專案跟目錄中已經初始化和已經下載mongodb包)
const mongodbClient = require("mongodb").MongoClient;
//mongodb伺服器的地址(可通過db.getMongo()查詢)
const url = "mongodb://127.0.0.1:27017";
//資料庫的名稱
const db_name = "demo2";
//連線伺服器
mongodbClient.connect(url,(err,client)=>{
//client相當於客戶端,err代表連線失敗,!err代表連線成功
if(!err){
//client為客戶端,即客戶端連線指定的資料庫,獲取指定的表(如果資料庫中已經有該資料庫,和對應的表,則直接連線,如果沒有,則新建立後連線)
const collection = client.db(db_name).collection("user");
//增(node每執行一次,就會增一次)
collection.save({
"name":"何",
"age":45
},(err,result)=>{
//參1:err: 失敗執行
//參2: result 增資料後返回的資訊
//新增完成後,客戶端關閉,即與伺服器斷開,否則小視窗不會結束
client.close();
})
//刪
collection.remove({
"name":"何"
},(err,result)=>{
client.close();
})
//改(注意三個引數)
//參1:條件
//參2:修改成的資料
//參3:回掉函式
collection.update({
"name":"張"
},{
$set:{"age":88}
},(err,result)=>{
client.close();
})
//查,將從資料庫中查詢的內容轉為陣列,並在控制檯輸出
collection.find()
.toArray((err,data)=>{
//data為轉為陣列後的資料
console.log(data);
client.close();
})
//升序
collection.find()
.sort({"age":1}).toArray((err,data)=>{
console.log(data);
client.close();
})
//降序
collection.find().
sort({"age":-1}).toArray((err,data)=>{
console.log(data);
client.close();
})
}
})