sequelize是好用,直接上代码吧
场景:执行下面代码,获取返回的字段
SELECT * from users left join details on users.id = details.id
开始的时候我一直用
sequelize.query('SELECT * from users left join details on users.id = details.id').then((a) => {
console.log(a)
})
这样子是有数据返回的,但是只有数据,没有结构,真实凄凉,我想要的是结构
没办法了,sequelize是没有字段结构返回的,各位大佬搭救一下我吧
后来看了mysql2的文档,字段结构一下子就出来了,但是这不是sequelize得,┭┮﹏┭┮
// get the client
const mysql = require('mysql2');
// create the connection to database
const connection = mysql.createConnection({
host: 'localhost',
user: 'root',
database: 'test'
});
// simple query
connection.query(
'SELECT * FROM `table` WHERE `name` = "Page" AND `age` > 45',
function(err, results, fields) {
console.log(results); // results contains rows returned by server
console.log(fields); // fields contains extra meta data about results, if available
}
);
换库吗?是不可能的,我寻思着在sequelize里面获取mysql2的connection,然后就有了下面一段代码
sequelize.connectionManager.getConnection().then((connection) => {
connection.query(`SELECT * from users`, function (error, results, fields) {
if (error) throw error;
console.log('The solution is: ',results, fields);
})
})
总算获取到了,关键时刻还是得阅读源码,寻找思路。。。