mysql Nodejs connection.query像运算符错误

时间:2019-05-31 01:33:09

标签: mysql node.js

我正在尝试获取用户使用mysql之类的运算符输入的一堆值

在我在Nodejs中的获取路线中

 console.log(req.query.key)
 pool.query("select FirstName from users where FirstName like %'" + req.query.key +"%'"

在调试控制台中,我得到

dav

  

您的SQL语法有错误;检查手册   对应于您的MySQL服务器版本以使用正确的语法   接近'%'dav%'

我刚刚在mysql工作台中运行了此查询,并且该查询在那儿正常工作

select FirstName from users where FirstName like '%dav%'

MySQL Workbench返回

大卫

我不确定为什么在Node.js中出现错误

编辑1:

I am using the `mysql` package

app.js

    const mysql= require('mysql');

    const pool = mysql.createPool({
    connectionLimit : 10,
    host: keys.connection.host,
    user: keys.connection.user,
    password:keys.connection.password,
    database:keys.connection.database,
})

我确定我的连接没有问题,因为我的其他路由都正常运行,没有错误

1 个答案:

答案 0 :(得分:2)

您需要将引号字符 放在第一个%之前,而不是之后。

pool.query("select FirstName from users where FirstName like '%" + req.query.key +"%'"