Node操作MongoDb數據庫 3.0的操作和2.0不一樣,此處是3.0

Node操作MongoDb數據庫 3.0的操作和2.0不一樣,此處是3.0

安裝mongodb

cnpm i mongodb --save
√ Installed 1 packages
√ Linked 0 latest versions
√ Run 0 scripts
√ All packages installed (used 388ms(network 380ms), speed 64.81kB/s, json 1(24.63kB), tarball 0B)

引入mongodb客戶端

const mongoClient = require('mongodb').MongoClient;

連接mongodb

查看mongodb的url
cmd

mongo
MongoDB shell version v4.0.10
connecting to: mongodb://127.0.0.1:27017/
show dbs
admin 0.000GB
comment 0.000GB
config 0.000GB
local 0.000GB
test 0.000GB
use test
switched to db test
show collections
animals
blogs
kittens
order
userList

const url = 'mongodb://127.0.0.1:27017/test';

新增

MongoClient.connect(url, function (err, client) {
    if (err) {
        console.log('數據庫連接失敗');
        return;
    }
    const db = client.db('test');
    db.collection('blogs').insertOne({
        title : "測試demo",
        sum : 20
    }, function (error, result) {
        if (error) {
            console.log('增加數據失敗');
            client.close();
            return;
        }
        console.log('增加數據成功' + result);
        client.close();
    });
});

修改(一條)

MongoClient.connect(url, function (err, client) {
    if (err) {
        console.log('數據庫連接失敗');
        return;
    }
    const db = client.db('test');
    db.collection('blogs').updateOne({
        title : "測試demo",
        sum : 20
    }, {$set:{sum : 40}}, function (error, result) {
        if (error) {
            console.log('修改數據失敗');
            client.close();
            return;
        }
        console.log('修改數據成功' + result);
        client.close();
    });
});

刪除remove

MongoClient.connect(url, function (err, client) {
    if (err) {
        console.log('數據庫連接失敗');
        return;
    }
    const db = client.db('test');
    db.collection('blogs').remove({
        title : "測試demo",
        sum : 20
    }, function (error, result) {
        if (error) {
            console.log('刪除數據失敗');
            client.close();
            return;
        }
        console.log('刪除數據成功' + result);
        client.close();
    });
});

刪除deleteOne

MongoClient.connect(url, function (err, client) {
    if (err) {
        console.log('數據庫連接失敗');
        return;
    }
    const db = client.db('test');
    db.collection('blogs').deleteOne({
        title : "測試demo",
        sum : 40
    }, function (error, result) {
        if (error) {
            console.log('刪除數據失敗');
            client.close();
            return;
        }
        console.log('刪除數據成功' + result);
        client.close();
    });
});

刪除數據成功{“result”:{“n”:1,“ok”:1},“connection”:{“id”:0,“host”:“127.0.0.1”,“port”:27017},“deletedCount”:1,“n”:1,“ok”:1}

查詢

const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://127.0.0.1:27017/test';

MongoClient.connect(url, function (err, client) {
    if (err) {
        console.log('數據庫連接失敗');
        return;
    }
    let list = [];
    const db = client.db('test');
    db.collection('blogs').find({
    }, function (error, result) {
        if (error) {
            console.log('查詢數據失敗');
            client.close();
            return;
        }
        console.log('查詢成功' + result);
        result.each(function (errorEach, doc) {
            if (errorEach) {
                console.log(errorEach);
            } else {
                if (doc != null) {
                    list.push(doc);
                } else {
                    console.log(list);
                }
            }
        });
        client.close();
    });
});

查詢成功[object Object]
[
{
_id: 5dc297c8febfae54cc21dc1a,
date: 2019-11-06T09:52:08.267Z,
title: ‘標題’,
author: ‘作者’,
body: ‘標籤’,
comments: [],
__v: 0
},
{
_id: 5dc2989da81f38579813c957,
date: 2019-11-06T09:55:41.043Z,
title: ‘標題’,
author: ‘作者’,
body: ‘標籤’,
comments: [],
__v: 0
},
{
_id: 5dc2989da81f38579813c958,
date: 2019-11-06T09:55:41.043Z,
title: ‘標題1’,
author: ‘作者1’,
body: ‘標籤1’,
comments: [ [Object] ],
hidden: false,
meta: { votes: 3, favs: 4 },
__v: 0
}
]

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章