MySql/JAVA替换
我有一个问题,当我想用这个方法从java更改数据库中的内容时:
stmt.executeUpdate("UPDATE contentPage1 SET Content = REPLACE(Content,'"+oldContenido+"','"+newContenido+"');");
我无法更改内容,因为我想输入新文本,而此文本包含“我无法更改旧内容”这样的字符!我做什么
你可以在下面搜索框中键入要查询的问题!
我有一个问题,当我想用这个方法从java更改数据库中的内容时:
stmt.executeUpdate("UPDATE contentPage1 SET Content = REPLACE(Content,'"+oldContenido+"','"+newContenido+"');");
我无法更改内容,因为我想输入新文本,而此文本包含“我无法更改旧内容”这样的字符!我做什么
# 1 楼答案
PreparedStatements允许您使用占位符字符(?)在SQL中输入,然后填写值。他们也能自动处理逃跑
更新
在下面的注释中,似乎OP实际上并没有尝试使用REPLACE SQL函数,他们只是尝试更新给定列中的数据。下面是实现这一点的一些示例代码(稍微修改了@TedHopp注释的版本):
# 2 楼答案
您可能需要使用PreparedStatements。您可以将参数添加到语句对象中,它将为您正确处理任何字符转义、类型转换和;c
编辑:JesseWeb是正确的,并提供了一个示例解决方案。他的回答应该被接受