使用PreparedStatement指定列名称和新值

时间:2016-09-12 13:30:08

标签: sql oracle jdbc

我试图用这样的PreparedStatement进行查询:

UPDATE PLAYER SET ? = ? WHERE ID = ?

但我得到

  

错误:java.sql.SQLSyntaxErrorException:ORA-01747

当我使用这样的代码时:

UPDATE PLAYER SET NAME = ? WHERE ID = ?

有效。但是,我想在我的方法中使用3个参数。那可能吗?

1 个答案:

答案 0 :(得分:0)

PreparedStatement本身不支持

你可以使用string.replace,但这正是你在使用preparedStatement时应该避免的(对于sql注入)

如果你正在使用Hibernate,你可以跳转到Criteria,这很容易做到