egg 使用 Sequelize 操作Mysql
1.安装 egg-sequelize 插件
npm install egg-sequelize --save
2.安装 mysql2 模块
npm install mysql2 --save
3.在config/config.default.js 文件内引入 上述的egg-sequelize插件
sequelize:{
dialect: 'mysql', //数据库类型
host: '172.18.8.246', //数据库地址
port: 3306, //端口号
database: 'web-crawler', //数据库库名
username: 'crawler', // 数据库登陆用户名
password: 'crawler!@#',//数据库登陆密码
timezone: '+08:00' ,// 保存为本地时区
}
4.在 config/plugin.js 文件 内 开启 egg-sequelize 插件
sequelize:{
enable: true,
package: 'egg-sequelize',
}
5.使用:
(1).在 app文件夹内 创建 一个model 文件夹,之后所有操作的数据库的存入这个文件夹内,一个表一个js文件
例如: 需要操作 tests 表----此时创建一个 Test.js 文件
app/model/Test.js
module.exports = app =>{
const {STRING,INTEGER} = app.Sequelize; //获取数据类型
const Test = app.model.define('tests',{
id:{type:INTEGER,primaryKey:true , autoIncrement: true }, //id 为tests 表内的 键 并且为 自增 整形数,
message:STRING ,
},{
freezeTableName: true, // Model 对应的表名将与model名相同
timestamps: false,
})
return Test
}
//上述描述的字段需要与表内字段一致。
(2).在app/service/test.js 文件内使用
this.app.model.Test.findAll(); //获取表内所有数据
//使用格式 this.qpp.model.模块文件名.方法