我正在尝试执行UPDATE
查询,其中VARCHAR
类型列值包含加号。我的查询不会更新行,如果我从varchar类型列值中删除加号,它就可以工作。
我在PHP中尝试mysql_real_escape_string
并在查询中用+ +替换+(直接在PHPMyAdmin中执行),但这些都不起作用。
问题是格式为
的查询UPDATE tableName SET someVariable = 'SomeValueThatContains+Sign' WHERE someId='IdValue';
正如我之前所说的那样
UPDATE tableName SET someVariable = 'SomeValueThatContains\\+Sign' WHERE someId='IdValue';
不起作用(在PHPMyAdmin中执行时)。
这可能是字符集数据库正在使用的东西还是类似的东西?有关如何编辑查询以更新行的任何建议吗?
答案 0 :(得分:0)
使用双反斜杠符号(\\)时,它会出现一行。 所以你需要插入四个反斜杠符号(\\\\),然后它会出现两次。
UPDATE tableName SET someVariable = 'SomeValueThatContains\\\\+Sign' WHERE someId='IdValue';
UPDATE employee SET someVariable ='rizwan\\\\+' Where someId=3;
试试吧。没有db属性问题。
感谢。