使用 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.js

Executing (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

回到顶部