是否可以使用ResultSet从许多表中更新字段?
我尝试了选择:
“从人员中选择PERSONS.NAME”,它可以正常工作
但是当我有一个连接时,它会引发一个错误,说字段标题是
无效。
是否可以编写多个联接然后更新所有字段或执行
我必须一个个地做吗?
示例代码:
Statement statement = null;
try {
statement = conn.createStatement();
statement = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE);
String sql = "SELECT PERSONS.NAME, BOOKS.TITLE,* FROM PERSONS LEFT OUTER JOIN BOOKS ";
ResultSet rs = statement.executeQuery(sql);
while (rs.next()) {
rs.updateString( "NAME", "John");
rs.updateString("TITLE", "Random Title");
rs.updateRow();
}
} catch (SQLException e ) {
JDBCTutorialUtilities.printSQLException(e);
} finally {
if (statement != null) { statement.close(); }
}
答案 0 :(得分:2)
据我所知,您只能更新对应于单个表的“简单” SQL SELECT
。添加联接时,它突然变成“复杂SQL”。