Invalid SQL statement or JDBC escape, terminating ''' not found

原因:
某条记录的某个字段的值包含 单引号 '

解决办法:
用两个单引号代替一个单引号 如:


查找用户名为 'chenxue 的用户:
--错误的写法
select * from user where LoginName=''chenxue'

--正确的写法
select * from user where LoginName='''chenxue'


oracle、mssql和mysql都支持通过用两个单引号代替一个单引号的方式来查询记录字段中有单引号的记录

注意:两个紧挨着的单引号(第一个表示转义,第二个是实际需要存放在数据中的单引号),被转义为一个单引号;不是紧挨着是不可以的。

参见:
单引号双重角色——字符串引用与转义小结
http://www.itpub.net/thread-678193-1-1.html

附ORACLE 特殊字符列表:
Invalid SQL statement or JDBC escape, terminating ''' not found

你可能感兴趣的:(oracle,sql,.net,mysql,jdbc)