node:在mysql数据库中插入特殊字符串

kyks70gy  于 2021-06-18  发布在  Mysql
关注(0)|答案(2)|浏览(564)

我正在使用节点tcp服务器为我的angular应用程序实现指纹验证在我的场景中,bio metric设备将特殊字符的字符串返回到我的节点服务器,其中包括特殊字符,如single和double @#$'%" 我想用单引号和双引号将这个完整的字符串存储到数据库中。我有以下问题

var fingerPrint = '@#$'%"'
db.query("insert into tbl_name (id, tempalte) value ('"+fingerPrint+"','')", (err, result)=>{
console.log(result)
})

但是当字符串包含双引号时,查询就会终止,单引号也会出现问题。有没有办法实现这个机制。
提前谢谢

plicqrtu

plicqrtu1#

尝试

encodeURI() and decodeURI() it may work
ctrmrzij

ctrmrzij2#

这里有一种方法,在nodejs中使用mysql。以下是您可以尝试的:

let fingerPrint = `'@#$'%"'`;
let addQuery = "INSERT INTO tbl_name (id, template) VALUES (?,?)";
let values = [1, fingerPrint];

db.query(addQuery, values, function (err, result) {
   if (err) {
      return console.error(err.message);
   }
   console.log("Number of records inserted: " + result.affectedRows);
})

相关问题