SQL中的单引号转义符

Posted 二木成林

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL中的单引号转义符相关的知识,希望对你有一定的参考价值。

如果我们查找字段中带有单引号的记录,如下面这种:

 查找username为lisi's的记录,我们按照通常的查询SQL是这样的:

select * from user where username='lisi's';

 很明显,报错了,因为它单独把"lisi"当作一个字符串来进行匹配了,而不是"lisi's"这个字符串。

解决就是将单引号进行转义,在SQL中将单引号进行转义的字符也是一个单引号。

所以将"lisi's"改为"lisi''s",在原来的基础上添加一个单引号,对原单引号进行转义。注意,是两个单引号,而不是一个双引号。

现在的SQL语句如下:

select * from user where username='lisi''s';

使用转义字符还能避免SQL注入问题。

以上是关于SQL中的单引号转义符的主要内容,如果未能解决你的问题,请参考以下文章

oracle怎么将字符串中的转义符

jshtml中的单引号双引号及其转义使用

转义 JavaScript 字符串中的单引号以进行 JavaScript 评估

jshtml中的单引号双引号及其转义使用

oracle 如何插入带有引号''和连接符的字符串

Java Regex:查找带转义的单引号文本