1、单引号 ' 转义

今天写mysql的时候遇到一个问题,当传入的mysql语句的参数中含有单引号就会出现问题,这就需要用到转义,其实非常简单,就是使用 .Replace("'", "''") 把参数中的一个单引号替换为两个单引号 。

具体使用:

select '''测试' as test

运行结果:

具体开发可使用 Replace 替换 单引号:

string parm1 = "'测试".Replace("'", "''");
string sql = string.Format("select '{0}' as test", parm1);

这里需要对每一个参数进行替换。

2、反斜杠 \ 转义 

当遇到参数中含有 反斜杠 \ 我们也需要对反斜杠进行转义

具体使用:

select '测试\\\\' as test

执行结果:

同样,具体开发可使用 Replace 替换 反斜杠:

string parm1 = "测试\\".Replace("\\", "\\\\");
string sql = string.Format("select '{0}' as test", parm1);

因为sql中不存在 反斜杠,所以也可以在sql字符串后面直接 Replace替换:

string parm1 = "测试\\";
string sql = string.Format("select '{0}' as test", parm1).Replace("\\", "\\\\");

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐