Sequelize 实现数据的增删改查及其相关参数

阅读时长 8 分钟读完

Sequelize 是一个基于 Node.js 的 ORM 框架,它支持多种数据库,包括 MySQL、PostgreSQL、SQLite 和 MSSQL。在前后端分离的应用中,Sequelize 是一个非常好用的工具,可以方便地操作数据库。本文将详细介绍 Sequelize 实现数据的增删改查及其相关参数。

安装 Sequelize

在使用 Sequelize 之前,需要先安装它。可以通过 npm 安装:

同时,还需要安装相应的数据库驱动,例如 MySQL:

创建 Sequelize 实例

在使用 Sequelize 之前,需要先创建一个 Sequelize 实例。可以通过以下方式创建:

其中,第一个参数是数据库名,第二个参数是用户名,第三个参数是密码。host 是数据库的地址,dialect 是数据库类型,可以是 mysql、postgres、sqlite 和 mssql。logging 表示是否在控制台输出 SQL 语句。

定义模型

在使用 Sequelize 进行数据库操作之前,需要先定义模型。模型是指数据库中的表,可以通过 Sequelize 定义。例如,下面是一个简单的用户模型:

-- -------------------- ---- -------
----- ---- - ------------------------ -
  --- -
    ----- ------------------
    ----------- -----
    -------------- ----
  --
  ----- -
    ----- -----------------
    ---------- -----
  --
  ---- ------------------
  ------ ----------------
---
展开代码

其中,sequelize.define 方法用于定义模型。第一个参数是模型名,第二个参数是模型属性。模型属性包括字段名、数据类型、是否允许为空、是否为主键等信息。

数据的增删改查

定义好模型之后,就可以使用 Sequelize 进行数据的增删改查了。下面将详细介绍 Sequelize 支持的增删改查方法及其相关参数。

数据的增加

使用 Sequelize 进行数据的增加,可以使用 create 方法。例如,要增加一个名为“Tom”的用户,可以使用以下代码:

其中,create 方法的参数是一个对象,包含要插入的数据。插入成功后,会返回插入的数据。

数据的查询

使用 Sequelize 进行数据的查询,可以使用 findAll 方法。例如,要查询所有年龄大于 18 岁的用户,可以使用以下代码:

其中,findAll 方法的参数是一个对象,包含查询条件。查询条件使用 where 属性指定,可以使用 Op 对象提供的运算符进行比较。比如,Op.gt 表示大于,Op.lt 表示小于,Op.between 表示在两个值之间等等。

如果要查询单个数据,可以使用 findOne 方法。例如,要查询名为“Tom”的用户,可以使用以下代码:

数据的修改

使用 Sequelize 进行数据的修改,可以使用 update 方法。例如,要将名为“Tom”的用户的年龄修改为 20,可以使用以下代码:

其中,update 方法的第一个参数是要修改的数据,第二个参数是修改条件。修改成功后,会返回一个 Promise。

数据的删除

使用 Sequelize 进行数据的删除,可以使用 destroy 方法。例如,要删除名为“Tom”的用户,可以使用以下代码:

其中,destroy 方法的参数是删除条件。删除成功后,会返回一个 Promise。

相关参数

除了上述增删改查方法之外,Sequelize 还提供了一些参数,可以用于更加细致地控制数据的操作。下面将介绍一些常用的参数。

字段选择

在查询数据时,可以使用 attributes 参数指定需要查询的字段。例如,要查询名字和年龄,可以使用以下代码:

数据限制

在查询数据时,可以使用 limitoffset 参数限制查询结果的数量。例如,要查询前 10 条数据,可以使用以下代码:

排序

在查询数据时,可以使用 order 参数指定查询结果的排序方式。例如,要按照年龄从小到大排序,可以使用以下代码:

分组

在查询数据时,可以使用 group 参数对查询结果进行分组。例如,要按照年龄进行分组,可以使用以下代码:

其中,Sequelize.fn 方法用于调用 SQL 函数,Sequelize.col 方法用于指定列名。

示例代码

下面是一个完整的示例代码,包含了 Sequelize 的数据的增删改查及其相关参数的使用:

-- -------------------- ---- -------
----- --------- - ---------------------
----- --------- - --- --------------------- ----------- ----------- -
  ----- ------------
  -------- --------
  -------- -----
---

----- ---- - ------------------------ -
  --- -
    ----- ------------------
    ----------- -----
    -------------- ----
  --
  ----- -
    ----- -----------------
    ---------- -----
  --
  ---- ------------------
  ------ ----------------
---

------ -- -- -
  ----- ---------------- ------ ---- ---

  ----- -------------
    ----- ------
    ---- ---
    ------ -----------------
  ---

  ----- -------------
    ----- --------
    ---- ---
    ------ -------------------
  ---

  ----- -------------
    ---- --
  -- -
    ------ -
      ----- -----
    -
  ---

  ----- --------------
    ------ -
      ----- -------
    -
  ---

  ----- ----- - ----- --------------
    ------ -
      ---- -
        ------------------ --
      -
    --
    ----------- -------- -------
    ------ -
      ------- ------
    --
    ------ ---
    ------- -
  ---

  -------------------------- -- ----------------
-----
展开代码

总结

本文介绍了 Sequelize 实现数据的增删改查及其相关参数。Sequelize 是一个非常好用的 ORM 框架,可以方便地操作数据库。希望本文对大家有所帮助。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/657470a0d2f5e1655ddaf70b

纠错
反馈

纠错反馈