mongoose入门及基本的增删改查

在test_mongoose目录下执行以下生成package.json文件 

npm init --yes

并在当前目录下安装mongoose,执行命令:

npm i mongoose -S

然后使用win+R,输入cmd回车,在dos窗口中,【使用命令mongo启动数据库】-【新建testdb数据库】-【新建users集合并插入一条记录】,如下所示:

接下来在test_mongoose文件夹中新建js文件:mongooseDemo.js,其内容如下所示:

不用管{useNewUrlParser:true}是什么意思,反正加上就行。不加的话会有警告信息

const mongoose = require('mongoose')

mongoose.connect("mongodb://127.0.0.1:27017/testdb", {useNewUrlParser:true},function (err) {
    if (err) {
        console.log(err)
        return
    }
    console.log("数据库连接成功!")
})

在test_mongoose目录中执行命令:node ./mongooseDemo.js 来运行mongooseDemo.js文件,以测试数据库连接是否成功

出现以上界面,就表示数据库连接成功了!

查询记录:

const mongoose = require('mongoose')

mongoose.connect("mongodb://127.0.0.1:27017/testdb")

var UserSchema = mongoose.Schema({
    name: String,
    age: Number,
    status:Number
})

var User = mongoose.model('User', UserSchema)//注意,当这里是两个参数时,默认连接的是users表,而不是User表。连接的是复数。

User.find({}, function (err, doc) {
    if (err) {
        console.log(err)
        return
    }
    console.log(doc)
})

注意:var User = mongoose.model('User', UserSchema)中,当这里是两个参数时,默认连接的是users表,而不是User表。如果想指定表,则在第三个参数的位置处添加表名即可,这行代码等价于:var User = mongoose.model('User', UserSchema,'users')

出现以上界面表示数据库连接成功,并且成功查询出了数据!

增加记录

const mongoose = require('mongoose')

mongoose.connect("mongodb://127.0.0.1:27017/testdb")

var UserSchema = mongoose.Schema({
    name: String,
    age: Number,
    status:Number
})

var User = mongoose.model('User', UserSchema,'users')

var u = new User({
    name: '王五',
    age: 22,
    status:0
})

u.save(function (err, doc) {
    if (err) {
        console.log(err)
        return
    }
    console.log("成功:",doc)
})

使用命令Ctrl+C退出命令行,并再次运行mongooseDemo.js文件 

记录添加成功!

如果希望添加的记录带有默认值,在定义Schema时可使用如下形式:

更新记录

name:"王五"的记录改为name:"wangwu"

const mongoose = require('mongoose')

mongoose.connect("mongodb://127.0.0.1:27017/testdb")

var UserSchema = mongoose.Schema({
    name: String,
    age: Number,
    status:Number
})

var User = mongoose.model('User', UserSchema,'users')

User.updateOne({ name: "王五" }, { name: "wangwu" }, function (err, res) {
    if (err) {
        console.log(err)
        return
    }
    console.log("更新成功:",res)
})

删除记录

删除name:"zhangsan"这条记录

const mongoose = require('mongoose')

mongoose.connect("mongodb://127.0.0.1:27017/testdb")

var UserSchema = mongoose.Schema({
    name: String,
    age: Number,
    status:Number
})

var User = mongoose.model('User', UserSchema,'users')

User.deleteOne({ name: 'zhangsan' }, function (err, res) {
    if (err) {
        console.log(err)
        return
    }
    console.log("删除成功:",res)
})

猜你喜欢

转载自blog.csdn.net/qq_40323256/article/details/114255478