是否可以简单地从用户输入中转义危险字符,然后直接运行SQL查询,而不是使用预准备语句?
例如,我可以在输入上使用以下函数,构建查询然后执行它吗?
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
}
});
}
答案 0 :(得分:0)
创建存储过程。构建数据访问层/服务。从应用程序调用服务上的方法,从应用程序传递适当的方法参数。
在我的Angular代码中,我从一个数据存储库层调用,该数据存储库层实现为在我的组件中注入的服务。