为了账号安全,请及时绑定邮箱和手机立即绑定

【备战春招】第8天 Sequlize 插入数据 查询数据

标签:
Node.js

课程章节:第2章 技术选型和知识点介绍(上)2-15 2-16

课程讲师双越

课程内容

插入数据

插入数据,输入IO操作,IO操作属于异步操作。传统的回调函数不太优雅,所以我们使用async/await来解决异步。

语法:

Model.create({});

例如:

const User = require('./userModel');

async function() {
    // 创建用户
    const user = await User.create({
        username: 'zhangsan',
        password: '123456'
    })
    // 底层会执行一个 SQL 语句:insert info users (...) values (...)
    console.log("user:", user.dataValues)
}

查询数据

查询数据是最频繁的操作,Sequelize 提供了几个方法:

  • 查询一条数据:Model.findOne({where: {字段: 字段值}}),会打印一条完整的记录。
  • 查询一条数据的特定列:Model.findOne({attrubutes:[’’,’’], where: {}}),只打印一条数据的某些字段
  • 查询所有数据:Model.findAll()

例如,查询用户名为 zhangsan 的记录:

const User = require('./userModel');

async function() {
    const user = await User.findOne({
      where: {
           username: 'zhangsan',
      }
    })
    
    console.log("user:", user.dataValues)
}

分页查询

分页查询要使用 limit 和 offset 属性去限制查询的数量和偏移量。例如,每页显示两条数据,跳过0条开始查询,就是从0条开始查询,即查询第一页的数据。

const User = require('./blogModel');

async function() {
    const blog = await Blog.findAll({
      limit: 2, // 限制本次查询 2 条记录
      offset: 0, // 跳过0条,即查询第一页
      order: [
          ['id', 'desc']
      ]
    })
}

查询总数

如果需要快速查询某张表中一共有多少条记录,可以使用:

Model.findAndCountAll();

图片描述

课程收获

数据库操作最基本的就是增删改查 CRUD,这节课学习了使用 Sequelize 通过 create 方法完成数据的插入和常用的查询操作。

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
Web前端工程师
手记
粉丝
2
获赞与收藏
4

关注作者,订阅最新文章

阅读免费教程

  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消