我目前有两个疑问。
router.get('/:id_school/:grade', isLoggedIn, async (req, res) => {
const { id_school, grade } = req.params;
const { id_enrollment } = req.body;
const enrollment = await db.query('SELECT * FROM enrollment where enrollment.id_school = ?', [id_school]);
const subjects = await db.query('SELECT * FROM subjects where id_enrollment = ?', [id_enrollment]);
console.log(enrollment,subjects);
res.render('list', {enrollment,subjects});
});
第一个没有任何问题。
const enrollment = await db.query ('SELECT * FROM enrollment where enrollment.id_school =?', [id_school]);
但是第二个查询我没有得到结果。
const subjects = await db.query ('SELECT * FROM subjects where id_enrollment =?', [id_enrollment]);
知道如何传递最后一部分的值
license_id =? ', [id_enrollment]
我尝试了以下方法,我不知道我可能错在哪里。
const subjects = await db.query ('SELECT * FROM subjects where id_enrollment =?', + [id_enrollment]);
const subjects = await db.query ('SELECT * FROM subjects where id_enrollment =?', [req.body.id_enrollment]);
const subjects = await db.query ('SELECT * FROM subjects where id_enrollment =?', + req.body.id_enrollment);
最佳答案
1 - id_enrollment 是否已设置? (我的意思是你首先验证它是否为空或未定义?)
2 - 在第一个 sql 中,您在 where 条件 'enrollment.id_school = ?' 中指定了表不在第二个“id_enrollment = ?”中
3 - 您可以尝试通过这种方式连接 id_enrollment 值:
db.query('SELECT * FROM subjects where id_enrollment =' + mysql.escape(id_enrollment))
4 - 你提到了license_id,但我在你的sql中没有看到它
关于mysql - 在 Node JS Handlebars JS MySql 中发送值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57484424/