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

时间:2018-10-26 05:30:34

标签: mysql node.js tcp

在这种情况下,我正在使用节点tcp服务器为我的角度应用程序实现指纹身份验证,生物识别设备将特殊字符的字符串返回到我的节点服务器,其中包括特殊字符,例如@#$'%"像单和双用单引号和双引号将此完整的字符串存储到数据库中。我有以下查询

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

但是当字符串包含双引号时,查询将终止以及出现单引号的问题。有什么办法可以实现这种机制。
预先感谢

2 个答案:

答案 0 :(得分:1)

这是在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);
})

答案 1 :(得分:0)

尝试

encodeURI() and decodeURI() it may work