Code
nodejs
+ mysql
で複数クエリを使用しようとしたところ、エラーが発生して解決するのに時間がかかった。
方法は単純でmultipleStatements: true
をちゃんと設定として加えておくこと。
server.js
const mysql = require('mysql');
const con = mysql.createConnection({
host: 'localhost',
user: 'root',
password: 'password',
database: 'database_name',
multipleStatements: true
});
server.js
app.get('/users/:id', (req, res) => {
var user_id = parseInt(req.params.id)
const sql_1 = `select * from users where users.id = ${user_id} ; `
const sql_2 = `select * from works where works.user_id = ${user_id} ;`
con.query( sql_1 + sql_2, function (err, result)
{
console.log(result[0])
//users data
console.log(result[1])
//works data
res.render('users_detail.ejs', { users: result[0], works : result[1] })
})
})
関連