Node 操作mongodb進行增刪改查

一、創建數據庫

先安裝mongodb:cnpm install mongodb --save

var MongodbClient=require("mongodb").MongoClient;
var url="mongodb://127.0.0.1:27017";
var dbname="chat";
//創建數據庫
MongodbClient.connect(url,{useUnifiedTopology:true},function(err,client){
    if(err) throw err;
    console.log("chat數據庫創建成功!");
    var dbbase=client.db(dbname);  //獲取當前數據庫對象
    dbbase.createCollection("user",function(error,result){
        if(error){
            console.log("表已經存在!");
            return;
        }
        console.log("user表創建成功!");
        client.close();  //數據庫關閉
    });
});

二、增加數據

  1. 單條數據
var data={
    name:"易安",
    age:21,
    sex:"女",
    address:"西安市"
}
dbbase.collection("user").insertOne(data,function(err,res){
    if(err) throw err;
    if(res.result.ok==1){
        console.log("增加數據成功!");
    }
    client.close();
});
  1. 多條數據
var data=[
    {
        name:"易安",
        age:21,
        sex:"女",
        address:"西安市"
    },
    {
        name:"kun",
        age:20,
        sex:"男",
        address:"杭州市"
    },
    {
        name:"ikun",
        age:18,
        sex:"女",
        address:"上海市"
    }
]
dbbase.collection("user").insertMany(data,function(error,res){
    if(error) throw error;
    if(res.result.ok!=0){
        console.log("增加數據成功!");
    }
    client.close();
});

三、刪除數據

  1. 單條數據(重複數據中刪除第一條)
var data={
    name:"ikun"
}
dbbase.collection("user").deleteOne(data,function(error,res){
    if(error) throw error;
    console.log("刪除數據成功!");
    client.close();
});
  1. 多條數據(重複數據全部刪除)
var data={name:"yan"}
dbbase.collection("user").deleteMany(data,function(error,res){
    if(error) throw error;
    console.log("刪除數據成功!");
    client.close();
});

四、查找數據

  1. 查找返回整張表
dbbase.collection("user").find().toArray(function(error,res){
    if(error) throw error;
    console.log(res);
    client.close();
});
  1. 條件查詢
dbbase.collection("user").find({name:"kun"}).toArray(function(error,res){
    if(error) throw error;
    console.log(res);
    client.close();
});
  1. 數據分頁查找
dbbase.collection("user").find().skip(0).limit(2).toArray(function(error,res){
    if(error) throw error;
    console.log(res);
    client.close();
});
  1. 模糊查找
dbbase.collection("user").find({name:/易/}).toArray(function(error,res){
    if(error) throw error;
    console.log(res);
    client.close();
});
  1. 大於等於查找
dbbase.collection("user").find({age:{$gte:20}}).toArray(function(error,res){
    if(error) throw error;
    console.log(res);
    client.close();
});

五、修改數據

  1. 單條數據
var data={
    name:"易安"
}
var set={
    $set:{name:"蓮安"}
}
dbbase.collection("user").updateOne(data,set,function(error){
    if(error) throw error;
    console.log("修改數據成功!");
    client.close();
});
  1. 多條數據
var data={
    name:"kun"
}
var set={
    $set:{name:"小花"}
}
dbbase.collection("user").updateMany(data,set,function(error){
    if(error) throw error;
    console.log("修改數據成功!");
    client.close();
});
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章