我需要创建一个JavaScript字符串,它传递给Node.js,对MSSQL友好。
这个问题:Making a javascript string sql friendly有一个很好的答案,解释了如何为MySQL转义字符串:
归功于Paul D'Aoust
function mysql_real_escape_string (str) {
return str.replace(/[\0\x08\x09\x1a\n\r"'\\\%]/g, function (char) {
switch (char) {
case "\0":
return "\\0";
case "\x08":
return "\\b";
case "\x09":
return "\\t";
case "\x1a":
return "\\z";
case "\n":
return "\\n";
case "\r":
return "\\r";
case "\"":
case "'":
case "\\":
case "%":
return "\\"+char; // prepends a backslash to backslash, percent,
// and double/single quotes
}
});
}
我需要为 MSSQL 实现完全相同的事情。
我花了最后一小时(可能更长)寻找答案但是,互联网上似乎没有很多文档可以解释如何做到这一点。 official mssql package documentation只提到了准备好的陈述,但是我希望找到一种方法来做到这一点,而无需准备好陈述。