MongoDB增删改查操作

2022-05-22 16:56:32 浏览数 (1)

二、MongoDB增删改查操作

1、创建集合和文档

创建集合分为两步,一是对对集合设定规则,二是创建集合,创建mongoose.Schema构造函数的实例即可创建集合。

代码语言:javascript复制
  // 设定集合规则
 const courseSchema = new mongoose.Schema({
     name: String,
     author: String,
     isPublished: Boolean
 });
  // 创建集合并应用规则
 const Course = mongoose.model('Course', courseSchema); // courses

代码语言:javascript复制
// 引入mongoose第三方模块 用来操作数据库
const mongoose = require('mongoose');
// 数据库连接
mongoose.connect('mongodb://localhost/playground', { useNewUrlParser: true})
    // 连接成功
    .then(() => console.log('数据库连接成功'))
    // 连接失败
    .catch(err => console.log(err, '数据库连接失败'));

// 创建集合规则
const courseSchema = new mongoose.Schema({
    name: String,
    author: String,
    isPublished: Boolean
});

代码语言:javascript复制
// 使用规则创建集合
// 1.集合名称
// 2.集合规则
const Course = mongoose.model('Course', courseSchema) // courses

// 创建文档
const course = new Course({
    name: 'node.js基础',
    author: 'wuyuxin',
    isPublished: true
});
// 将文档插入到数据库中
course.save();

创建文档实际上就是向集合中插入数据。

分为两步:

创建集合实例。

调用实例对象下的save方法将数据保存到数据库中。

代码语言:javascript复制
  // 创建集合实例
 const course = new Course({
     name: 'Node.js course',
     author: 'wuyuxin',
     tags: ['node', 'backend'],
     isPublished: true
 });
  // 将数据保存到数据库中
 course.save();

代码语言:javascript复制
Course.create({name: 'JavaScript基础', author: 'wuyuxin', isPublish: true}, (err, doc) => { 
     //  错误对象
    console.log(err)
     //  当前插入的文档
    console.log(doc)
});

Course.create({name: 'JavaScript基础', author: 'wuyuxin', isPublish: true})
      .then(doc => console.log(doc))
      .catch(err => console.log(err))

代码语言:javascript复制
// 引入mongoose第三方模块 用来操作数据库
const mongoose = require('mongoose');
// 数据库连接
mongoose.connect('mongodb://localhost/playground', { useNewUrlParser: true})
    // 连接成功
    .then(() => console.log('数据库连接成功'))
    // 连接失败
    .catch(err => console.log(err, '数据库连接失败'));

// 创建集合规则
const courseSchema = new mongoose.Schema({
    name: String,
    author: String,
    isPublished: Boolean
});

// 使用规则创建集合
// 1.集合名称
// 2.集合规则
const Course = mongoose.model('Course', courseSchema) // courses

// 向集合中插入文档
// Course.create({name: 'Javascript', author: 'wuyuxin', isPublished: false}, (err, result) => {
//     console.log(err)
//     console.log(result)
// })

Course.create({name: 'Javascript123', author: 'wuyuxin', isPublished: false})
      .then(result => {
          console.log(result)
      })

0 人点赞