1.安装
npm install --save sequelize npm install --save mysql2
2.Sequelize 中 Model 的数据类型对应MySQL中的数据类型
Sequelize.STRING // VARCHAR(255) 类型:字符串 最大值: 65535个字符
Sequelize.STRING(1234) // VARCHAR(1234) 类型:变长 最大值: 65535个字符
Sequelize.TEXT // TEXT 类型:字符串 最大值:65535个字符
Sequelize.TEXT('tiny') // TINYTEXT 类型:字符串 最大值:255个字符
Sequelize.INTEGER // INTEGER 类型:整型 最大值:范围(-2147483648~2147483647)
Sequelize.BIGINT // BIGINT 类型:整型 最大值:范围(+-9.22*10的18次方)
Sequelize.BIGINT(11) // BIGINT(11) 类型:整型 最大值:范围(+-9.22*10的18次方)
Sequelize.FLOAT // FLOAT 类型:单精度浮点型 8位精度(4字节)
Sequelize.FLOAT(11) // FLOAT(11) 类型:单精度浮点型 8位精度(4字节)
Sequelize.FLOAT(11, 12) // FLOAT(11,12) 类型:精度浮点型 8位精度(4字节) m总个数,d小数位
Sequelize.DOUBLE // DOUBLE 类型:双精度浮点型 16位精度(8字节)
Sequelize.DOUBLE(11) // DOUBLE(11) 类型:双精度浮点型 16位精度(8字节)
Sequelize.DOUBLE(11, 12) // DOUBLE(11,12) 类型:双精度浮点型 16位精度(8字节) m总个数,d小数位
Sequelize.DECIMAL // DECIMAL 类型:定点数型
Sequelize.DECIMAL(10, 2) // DECIMAL(10,2) 类型:定点数型 参数m<65 是总个数,d<30且 d<m 是小数位
Sequelize.DATE // DATETIME 类型:日期时间类型 范例:'2009-05-12 02:31:44'
Sequelize.DATE(6) // DATETIME(6)
Sequelize.DATEONLY // DATE without time.
Sequelize.BOOLEAN // TINYINT(1) 类型:整型 范围(-128~127)
Sequelize.ENUM('value 1', 'value 2') // ENUM 类型:枚举
Sequelize.BLOB // BLOB 类型:二进制数据
Sequelize.BLOB('tiny') // TINYBLOB 类型:二进制数据
3.打印结果
单条数据打印
console.log(res.toJSON());
console.log(res.get({ plain: true }));
列表打印
console.log(JSON.stringify(res, null, 4));
let res = await MyModel.findAll({ raw: true, nest:true })
console.log(res)
或者查询参数中传入raw: true然后可以直接用console.log(res)
4.过滤属性
Model.findAll({
attributes: ['foo', 'bar']
})
5.条件过滤
$eq(等于) $ne(不等于) $gt(大于) $gte(大于等于) $lt(小于) $lte(小于等于) $between(在某个范围内) $notBetween(不在某个范围内) $in(在某个集合中) $notIn(不在某个集合中) $like(和某个模式匹配) $notLike(和某个模式不匹配)
6.批量创建
await Foo.bulkCreate([
{ name: 'abc123' },
{ name: 'name too long' }
]);
参考链接:
https://www.cnblogs.com/suiyueshentou/p/7592505.html
https://blog.csdn.net/zjw0742/article/details/76861013
https://itbilu.com/nodejs/npm/V1PExztfb.html
https://sequelize.org/
