使用 Sequelize 在 NodeJS 中创建 MySQL 表
Sequelize 简介
Sequealize 遵循Node.js针对不同服务器(如 Postgres、MySQL、MariaDB、SQLite 和 Microsoft SQL Server)的基于承诺的ORM。
以下是 NodeJS sequelize 的一些主要功能 -
交易支持
关系
急切和延迟加载
阅读复制和更多...
使用 Sequelize 连接到 MySQL
我们需要在 MySQL 和Node.js使用 Sequelize之间建立连接。
使用 sequelize 创建成功连接后,我们将需要以下三个文件进行配置。请仅在各自的文件夹中小心地创建以下文件。
SequelizeDemo > application.js
这将是我们的根文件,它将保存实际的逻辑。
SequelizeDemo>utils>database.js
这将保存与 MySQL 的所有连接详细信息。
SequelizeDemo>模型>user.js
这将包含所需的模型信息。
示例
配置 Database.js
const Sequelize = require('sequelize')const sequelize = new Sequelize(
'YOUR_DB_NAME', // 教程点
'YOUR_DB_USER_NAME', // 根
'YOUR_DB_PASSWORD', //root{
dialect: 'mysql',
host: 'localhost'
}
);
module.exports = sequelize
请进行所有输入以连接您的数据库。
配置 User.js
使用此文件来定义模型和表之间的映射。
const Sequelize = require('sequelize')const sequelize = require('../utils/database')
const User = sequelize.define('user', {
// 列 #1 的名称及其定义的属性:id
user_id:{
// 整数数据类型
type:Sequelize.INTEGER,
// 自动增加值
autoIncrement:true,
// user_id 不能为空。
allowNull:false,
// 唯一标识用户
primaryKey:true
},
// 列 #2 的名称:名称
name: { type: Sequelize.STRING, allowNull:false },
// 第 3 列的名称:电子邮件
email: { type: Sequelize.STRING, allowNull:false },
// 列:时间戳
createdAt: Sequelize.DATE,
updatedAt: Sequelize.DATE,
})
module.exports = User
配置 app.js
要创建模型,我们可以使用两种方法中的任何一种 -
sync()方法- 如果存在,则仅创建模型。如果模型存在,则不会覆盖模型。
sync({force: true}) Method - 如果模型不存在,将创建一个新模型,但是,如果模型存在,它将覆盖现有模型。
// 导入数据库模型输出结果const sequelize = require('./database')
// 导入用户模型
const User = require('./user')
// 创建用户中定义的所有表
sequelize.sync()
// 您可以更改user.js文件
// 并运行此代码以检查它是否覆盖了现有代码。
sequelize.sync({force:true)
在运行上述程序时,您将获得以下输出 -
C:\\Users\SequelizeDemo>> node app.jsExecuting (default): CREATE TABLE IF NOT EXISTS `users` (`user_id` INTEGER NOT NULL auto_increment , `name` VARCHAR(255) NOT NULL, `email` VARCHAR(255) NOT NULL, `createdAt` DATETIME, `updatedAt` DATETIME, PRIMARY KEY (`user_id`)) ENGINE=InnoDB;
Executing (default): SHOW INDEX FROM `users`
现在,您可以检查您的数据库。上面的表格将被创建。
以上是 使用 Sequelize 在 NodeJS 中创建 MySQL 表 的全部内容, 来源链接: utcz.com/z/335560.html