Sequelize 是一款 Node.js 中常用的 ORM(Object Relational Mapping)框架,它可以帮助我们简化数据库操作,提高开发效率。在本文中,我们将学习如何用 Sequelize 连接数据库和创建模型。
连接数据库
在使用 Sequelize 之前,我们需要先连接数据库。Sequelize 支持多种数据库,包括 MySQL、PostgreSQL、SQLite、MSSQL 等。我们以连接 MySQL 数据库为例:
const Sequelize = require('sequelize'); const sequelize = new Sequelize('database', 'username', 'password', { host: 'localhost', dialect: 'mysql', });
上面的代码中,我们创建了一个 Sequelize 实例 sequelize
,并传入了连接数据库所需的参数。其中,database
、username
、password
为数据库的配置信息,localhost
为数据库的主机地址,mysql
为数据库的类型。
当我们成功连接数据库后,Sequelize 会在控制台输出一条信息,表示已经连接成功。
创建模型
在 Sequelize 中,我们可以通过创建模型来操作数据库。模型是一个类,通过模型可以完成对表的 CRUD(增删改查)操作。下面是一个例子:
const { Model, DataTypes } = require('sequelize'); class User extends Model {} User.init({ username: DataTypes.STRING, password: DataTypes.STRING }, { sequelize, modelName: 'user' });
上面的代码中,我们定义了一个叫做 User
的模型,它继承自 Model
类。在模型的实例化过程中,我们调用了一个 init
方法,该方法接收两个参数:第一个参数为一个包含表结构信息的对象,第二个参数为一个包含配置信息的对象。
其中,第一个参数包含了两个字段:username
和 password
,它们的类型为 DataTypes.STRING
,表示数据库中存储的是字符串类型的数据。第二个参数中有一个 sequelize
字段,它指定了该模型所使用的 Sequelize 实例,以及一个 modelName
字段,用于指定模型对应的表名为 user
。
当我们成功创建模型后,Sequelize 会自动将模型同步到数据库中。如果数据库中不存在该表,Sequelize 会自动生成一个名为 user
的表。
使用模型
使用模型可以完成对数据库的操作。下面是一些常用的模型方法:
创建数据
await User.create({ username: 'user1', password: '123456' });
查询数据
const users = await User.findAll(); console.log(users);
更新数据
await User.update({ password: '654321' }, { where: { username: 'user1' } });
删除数据
await User.destroy({ where: { username: 'user1' } });
总结
本文介绍了如何用 Sequelize 连接数据库和创建模型,以及常用的模型方法。使用 Sequelize 可以大大提高开发效率,并且能够使代码更加清晰易懂。希望本文对您有所帮助。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/64cb23095ad90b6d041ef036