Nodejs操作MongoDB數據庫


數據庫連接

要在node.js中使用MongoDb,首先需要執行命令 npm install mongodb --save 進行安裝,然后在頁面中進行引入:

const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://127.0.0.1:27017';
const dbName = 'mongo';
const client = new MongoClient(url,{useUnifiedTopology:true});
client.connect(function(error){
    if(error){
        console.log(error);
        return;
    }else{
        console.log('連接成功');
    }
})

 由於本地測試數據庫沒有開啟權限驗證,上面可以直接連接,如果數據庫開啟了權限驗證的話,就需要使用下面的方式進行連接:其中admin 表示用戶名,123456 表示密碼。

const url = 'mongodb://admin:123456@localhost:27017/';

創建集合

使用 createCollection() 方法來創建集合

const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://127.0.0.1:27017';
const dbName = 'mongo';
const client = new MongoClient(url,{useUnifiedTopology:true});
client.connect(function(error){
    if(error){
        console.log(error);
        return;
    }else{
        console.log('連接成功');
        const db = client.db(dbName);
        db.createCollection('order',function(err,res){
            if(err){
                console.log(err);
                return
            }else{
                console.log(res);
                client.close();
            }
        })
    }
})

刪除集合

我們可以使用 drop() 方法來刪除集合,執行成功 res 返回 true,否則返回 false

 

 也可以使用dropCollection()來刪除集合,返回結果和上面相同。

插入文檔

單條插入

單條插入使用insertOne(),接收一個對象:

console.log('連接成功');
        const db = client.db(dbName);
        db.collection('order').insertOne({type:1,name:'礦泉水',price:2},function(err,res){
            if(err){
                console.log(err);
                return;
            }else{
                console.log(res);
                client.close();
            }
        })

多條插入

如果要插入多條數據,可以使用insertMany(),接收一個數組:

console.log('連接成功');
        const db = client.db(dbName);
        let arr=[
            {type:1,name:'可樂',price:4},
            {type:2,name:'記號筆',price:10},
            {type:2,name:'筆記本',price:8},
        ];
        db.collection('order').insertMany(arr,function(err,res){
            if(err){
                console.log(err);
                return;
            }else{
                console.log(res);
                client.close();
            }
        })

 

 更新文檔

單條更新

單條更新符合條件的數據,可以使用updateOne():

   

 多條更新

 如果要更新所有符合條的文檔數據可以使用 updateMany():

查詢

查詢使用find(),然后使用toArray()將返回結果轉為數組:

 帶條件查詢

 

 排序

 

 刪除文檔

 根據條件,單條數據的刪除,使用deleteOne():

 

 如果要刪除多條語句可以使用 deleteMany() 方法

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM