NextJS 中 where 子句中的未知列 API

Unknown column in where clause in NextJS API

我正在编写一个 API,它将根据类别从 MySQL table 中获取数据。代码目前看起来像这样。

import { sql_query } from "../../../lib/db"

export default async function handler(req, res) {
    var category = 'Starters'
    if (req.method === 'GET') {
        try {
            const results = await sql_query({
                query_string: `SELECT * FROM products WHERE category = ${category}`
            })
            return res.status(200).json(results)
        } catch (error) {
            res.status(500).json({ message: error.message })
        }
    }
}

由于某种原因,这没有完成,相反,我看到了这条错误消息

{"message":"ER_BAD_FIELD_ERROR: Unknown column 'Starters' in 'where clause'"}

据我所知,我的 MySQL 查询没有问题,因为它在 PHPMyAdmin 中工作正常。谁能指出我在这里做错了什么?

该错误表明正在注入参数并在列名的上下文中使用,您需要将其包含在引号中:

`SELECT * FROM products WHERE category = '${category}'`