如何使用 Sequelize 创建数据库表

阅读时长 7 分钟读完

在前端开发中,使用 Sequelize 是非常普遍的。Sequelize 是一个基于 Node.js 的 ORM(Object-Relational Mapping) 框架,可以方便地与关系型数据库进行交互,并将数据库表映射为 JavaScript 对象。本文将介绍如何使用 Sequelize 创建数据库表。

安装 Sequelize

首先,需要全局安装 Sequelize CLI 和 Sequelize:

配置数据库

在使用 Sequelize 前,需要先配置数据库的连接信息。在项目的根目录下新建一个 .sequelizerc 文件,配置数据库连接信息:

其中,database.json 配置数据库连接信息:

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

定义模型

使用 Sequelize 创建数据库表时,需要先定义模型。在 models 目录下,新建一个 user.js 文件,定义一个用户模型:

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

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

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

这个用户模型有三个字段:idnameage。其中,id 是主键,自动递增;nameage 分别为字符串和整数类型,不允许为空。

同步数据库

完成模型定义后,需要同步数据库,即创建对应的数据表。可以使用 Sequelize 提供的 sequelize.sync() 方法实现表的同步:

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

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

force 参数表示是否删除已存在的表,重新创建。如果值为 true,则会删除已存在的表,重新创建。如果为 false,则不会删除已存在的表,只会创建缺失的表。

创建记录

完成表的同步后,就可以操作数据了。创建一条记录的方法如下:

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

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

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

在这个例子中,使用 User.create() 方法创建一条记录。create() 方法的参数是一个对象,对象的属性与表的字段一一对应,可以指定要插入的数据。返回的结果是创建的记录,可以进行后续操作。

查询记录

查询记录的方法如下:

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

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

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

在这个例子中,使用 User.findAll() 方法查询所有记录。返回的结果是一个数组,包含所有符合条件的记录。

更新记录

更新记录的方法如下:

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

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

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

在这个例子中,使用 User.findOne() 方法查询一条记录,然后将其更新,并保存。

删除记录

删除记录的方法如下:

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

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

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

在这个例子中,使用 User.findOne() 方法查询一条记录,然后删除。

总结

本文介绍了如何使用 Sequelize 创建数据库表。首先,需要全局安装 Sequelize CLI 和 Sequelize。然后,配置数据库连接信息。使用 Sequelize 前,需要先定义模型。在 models 目录下,新建一个模型文件,定义模型。使用 Sequelize 提供的 sequelize.sync() 方法同步数据库。完成同步后,就可以操作数据了。可以使用 User.create() 方法创建一条记录。使用 User.findAll() 方法查询记录。使用 user.save() 方法更新记录。使用 user.destroy() 方法删除记录。

使用 Sequelize 创建数据库表的过程,其实是一个 ORM 的过程,可以简化操作,提高效率。

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

纠错
反馈