egg中使用ORM框架Sequelize操作mysql数据库

安装

npm install --save egg-sequelize mysql2

config.default.js文件

  config.sequelize = {
    dialect: 'mysql',
    host: '127.0.0.1',
    port: 3306,
    username:'root',
    password:'root',
    database: 'eggjs',
  };

plugin.js文件

'use strict';

/** @type Egg.EggPlugin */
module.exports = {
  // had enabled by egg
  // static: {
  //   enable: true,
  // }
sequelize:{
    enable: true,
    package: 'egg-sequelize',
  }
};

定义好model   app/model/ 目录下编写 user 这个 Model:字段和数据库一样

如果不指定表名称的话数据库的表名称要加 ‘s’ 如:model里是user,数据库里面的就是users

'use strict';

module.exports = app => {
  const { STRING, INTEGER, DATE } = app.Sequelize;
  const User = app.model.define('user', {
    id: { type: INTEGER, primaryKey: true, autoIncrement: true },
    name: STRING(30),
    age: INTEGER,
    created_at: DATE,
    updated_at: DATE,
  });

  return User;
};

egg中使用ORM框架Sequelize操作mysql数据库_第1张图片

如果指定表名称,就和数据库表名称一样

'use strict';

module.exports = app => {
  const { STRING, INTEGER, DATE } = app.Sequelize;
  const User = app.model.define('user', {
    id: { type: INTEGER, primaryKey: true, autoIncrement: true },
    name: STRING(30),
    age: INTEGER,
    created_at: DATE,
    updated_at: DATE,
  },{
    tableName:'user' //指定表名称
  }
  );
  return User;
};

egg中使用ORM框架Sequelize操作mysql数据库_第2张图片

你可能感兴趣的:(egg,JavaScript)