npm 包 orm 使用教程

阅读时长 6 分钟读完

什么是 ORM

ORM(Object-Relational Mapping)是一种将对象模型表示为关系数据库模型的技术。这意味着你可以使用 JavaScript 对象来表示数据库中的记录,而不需要手动编写 SQL 查询语句。

ORM 技术为前端开发提供了方便,因为它允许开发人员使用简单的 JavaScript 语法来访问和操作数据库。这就使得开发过程更加高效、方便、快速。

ORM 常用 npm 包

  1. Sequelize:用于 Node.js 应用程序与 MySQL、MariaDB、SQLite 和 PostgreSQL 数据库之间的通信。它支持 ES6 语法,允许在代码中定义数据模型,支持事务和连接池等功能;

  2. TypeORM:支持 Node.js 和浏览器,可用于 MongoDB、PostgreSQL、MySQL、MariaDB、SQLite、MS SQL Server 等数据库。它包括多种数据存储模式,支持用 TypeScript 或 JavaScript 编写实体和查询,并支持模块化设计;

  3. Prisma:由语言无关的 SQL 查询生成器和 flexible CRUD 索引器组成,可以与 Prisma Client 配合使用,在 TypeScript 和 JavaScript 中使用。它使用来自 MongoDB 的概念和功能,如文档数据库。

本文以 Sequelize 作为示例进行 ORM 的使用教程介绍,让读者快速上手使用 ORM 技术。

使用 Sequelize

安装

首先,需要安装 node 和 npm,然后输入以下命令进行 sequelize 的全局安装和启动:

代码示例

在使用 Sequelize 之前,需要先定义您的数据模型。下面是一个 users 表的定义,该表代表了一个具有 id、 name 和 email 字段的用户。

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

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

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

上述代码中,我们定义了一个名为 User 的模型,模型包含了 id、 name 和 email 字段。我们希望 id 字段在新纪录插入到数据库时会被自动增加,而 name 和 email 字段则是必须存在的,其中 email 字段必须是唯一的。

sequelize 的基本操作

  1. 数据库连接:
  1. 插入数据:
  1. 查询数据:
  1. 更新数据:
  1. 删除数据:

关联关系

Sequelize 的强大之处在于其支持关联。下面是一个示例,展示了在一个示例数据库中定义两个租户和一个订单的关系:

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

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

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

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

在上面的示例中,我们定义了两个模型 User 和 Order。User 和 Order 之间的关系是“一个 User 可以有多个 Order,而一个 Order 只属于一个 User ”。在第二个语句中,我们使用 User.hasMany(Order) 和 Order.belongsTo(User) 来定义这种关系。然后,我们使用 user.createOrder() 方法来创建一个新的订单,该方法将自动关联到 Lisa 示例用户中。

同步表

在开始你编写应用程序之前,你需要执行 Sequelize.sync() 方法来确保 sequelize 实例连接到数据库。这个方法将连接到数据库,并自动创建与数据模型相对应的表。

总结

此文介绍了 ORM 技术及其在前端中的应用,以 Sequelize ORM 包为例,介绍了其安装和使用方法。读者可以自行使用不同的 ORM 包进行学习和实践,做到更好的前端开发工作。

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

纠错
反馈