📜  使用 sequelize 从表中读取 - Javascript (1)

📅  最后修改于: 2023-12-03 14:49:46.605000             🧑  作者: Mango

使用 Sequelize 从表中读取 - JavaScript

Sequelize 是一款流行的面向对象的 ORM 工具,用于在 Node.js 程序中管理 SQL 数据库。

在本文中,我们将介绍如何使用 Sequelize 从表中读取数据。

安装 Sequelize

我们可以通过使用 npm 安装 Sequelize 包。

npm install sequelize

现在,你已经成功地将 Sequelize 包安装在你的项目中。

连接到数据库

在 Sequelize 中,首先需要为应用程序配置一个数据库连接。

以下是一个使用 Sequelize 连接 MySQL 数据库的示例:

const Sequelize = require('sequelize');
const sequelize = new Sequelize('database', 'username', 'password', {
  host: 'localhost',
  dialect: 'mysql'
});

在上面的示例中,我们配置了一个名为 database 的 MySQL 数据库,usernamepassword 是 MySQL 数据库的登陆凭据。我们还指定了数据库主机的 localhost 地址以及想要使用的数据库方言(即 MySQL)。

创建模型(Models)

在 Sequelize 中,模型用于描述数据库中的表以及与这些表的交互。通过定义这些模型,我们可以使用 Sequelize 对表进行 CRUD 操作。

以下是关于如何使用 Sequelize 创建一个简单模型的代码。

const { Sequelize, DataTypes } = require('sequelize');

const sequelize = new Sequelize('database', 'username', 'password', {
  host: 'localhost',
  dialect: 'mysql'
});

const User = sequelize.define('User', {
  name: {
    type: DataTypes.STRING,
    allowNull: false
  },
  age: {
    type: DataTypes.INTEGER
  }
});

在上面的示例中,我们定义了一个名为 User 的模型,并将其连接到我们之前已配置的数据库。

定义了一个名为 User 的模型,并包含了两个属性:

  • name 属性,其类型为字符串,并设置为必填字段。
  • age 属性,其类型为整数,可以为空。

我们通过调用 define() 方法创建了一个包含这两个属性的 User 模型。

查询表格中的数据

在 Sequelize 中,可以使用各种方法查询数据库表中的数据。以下是一些常用的方法:

查询所有数据
User.findAll().then(users => {
  console.log(users);
});

上面的代码是从 User 模型中查询所有数据的示例。

我们调用 findAll() 方法来查找所有在 User 模型中定义的数据,然后在控制台上打印输出结果。

根据条件查询
User.findAll({ where: { name: 'John' } }).then(users => {
  console.log(users);
});

上面的代码是从 User 模型中根据 name 属性为 "John" 的条件查询的示例。

我们在调用 findAll() 方法时,向其传递了一个条件,用于筛选出名称为 John 的用户。

查询单个数据
User.findOne({ where: { name: 'John' } }).then(user => {
  console.log(user);
});

上面的代码是从 User 模型中查询单个用户的示例。

这里,我们使用 findOne() 方法查询一个唯一的用户,该用户名称为 "John"

总结

在本文中,我们介绍了如何使用 Sequelize 从表中读取数据,了解了如何连接到数据库以及如何定义和使用模型。我们还介绍了如何使用一些常见的用于查询数据的方法。

如果你想了解更多关于 Sequelize 的内容,请访问 Sequelize 官方网站。