我正在使用WHERE运行mysql查询,我想包含我的输入提示变量,输入我将如何进行这样做?我当前的查询是这样的,
var connect = connection.query('SELECT url FROM Sonic_url WHERE name='
+ input //<where I'm confused
, function(err, rows, fields) {
答案 0 :(得分:5)
你可以按照你的方式包含它,但是这将为你提供一个对sql-injection开放的非转义查询。为防止您这样做,您可以使用mysql.format
var sql = mysql.format("SELECT url FROM Sonic_url WHERE name=?", [input]);
var connection = connection.query(sql, function(err,rows,fields) {});