您当前的位置: 首页 >  mongodb

彭世瑜

暂无认证

  • 2浏览

    0关注

    2791博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Node.js使用mongodb.js操作MongoDB数据库

彭世瑜 发布时间:2020-04-06 18:03:11 ,浏览量:2

文档:

  • npmjs https://npmjs.com/package/mongodb
  • documentation https://docs.mongodb.com/drivers/node

安装

npm i mongodb

文档给出的示例是通过回调函数操作的 这里给出async/await 操作方式,写起来会舒服很多

代码实例

const { MongoClient, ObjectId } = require('mongodb')

// 配置连接参数
const url = "mongodb://localhost:27017";
const options = { useNewUrlParser: true, useUnifiedTopology: true }


async function func() {
    // 连接数据库
    const client = await MongoClient.connect(url, options)

    // 获取库、集合
    const data = client.db("data");
    const student = data.collection("student")

    /**
     * 写操作
     */
    // 插入数据 insertOne insertMany
    const result1 = await student.insertOne(
        { 'name': "Tom", age: 23 }
    )
    console.log(result1.insertedId); 
    // 5e8afa00e473da5ac1c0a9b7

    // 更新数据 updateOne updateMany
    const result2 = await student.updateOne(
        { _id: ObjectId('5e8af9dbda2c0b5aacb9ff1c') },
        { $set: { name: "Jack" } }
    )
    console.log(result2.modifiedCount); // 1

    // 删除数据 deleteOne deleteMany
    const result3 = await student.deleteOne(
        { _id: ObjectId('5e8af9dbda2c0b5aacb9ff1c') }
    )
    console.log(result3.deletedCount); // 1

    /**
     * 读操作
     */
    // 查询数据 findOne find
    const result4 = await student.findOne(
        { 'name': "Tom" }
    )
    console.log(result4); 
    // { _id: 5e8af9e8007ee05aad2b641f, name: 'Tom', age: 23 }

    // 排序:升序(1) 降序(-1), 分页
    const result5 = await student.find(
        { 'name': "Tom" }
    ).skip(2).limit(2).sort({ age: -1 }).toArray()
    console.log(result5);
    // [ 
    //   { _id: 5e8afa00e473da5ac1c0a9b7, name: 'Tom', age: 23 },
    //   { _id: 5e8afaab247c7c5b0530143e, name: 'Tom', age: 23 } 
    // ]

    // 关闭连接
    await client.close();
}


func()

参考 Node.js 连接 MongoDB

关注
打赏
1665367115
查看更多评论
立即登录/注册

微信扫码登录

0.1275s