java - 为什么我不能在SQL中对许多表使用超过1个deleteRow()?我发现只有第一个rs的行被删除,其他的没有

标签 java mysql sql-server jdbc

String SQL="Select * from APARTMENT_ADDONS";

String SQL2="Select * from APARTMENT_ID";

String SQL3="Select * from APARTMENT_AVAILABLE";

String SQL4="Select * from APARTMENT_COST";

stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);

stmt2 = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);

stmt3 = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);

stmt4 = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);

rs=stmt.executeQuery(SQL);

rs2=stmt2.executeQuery(SQL2);

rs3=stmt3.executeQuery(SQL3);

rs4=stmt4.executeQuery(SQL4);

rs.deleteRow();

rs2.deleteRow();

rs3.deleteRow();

rs4.deleteRow();

最佳答案

ResultSet.deleteRow() 仅删除结果集的当前行。如果您想删除多个,请运行以下命令:-

String sql = "DELETE FROM MyTable WHERE Whatever = 'Something'";
stmt.executeUpdate(sql);

(当然最好使用PreparedStatements)。

关于java - 为什么我不能在SQL中对许多表使用超过1个deleteRow()?我发现只有第一个rs的行被删除,其他的没有,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43235871/

相关文章:

java - 实现删除链表最后一个节点的方法

java - 从 eclipse rcp 引用链接资源

mysql - 如何在 SQL 数据库中选择最新的 x 个条目

mysql - 如何使用另一个查询向我的查询添加列?

.net - 将 SQL Server DateTime 对象转换为 BIGINT(.Net 刻度)

sql-server - 当我没有所需的所有列时,如何进行交叉联接?

java - Eclipse启动异常(ChooseWorkspaceData.writePersistedData中的java.lang.ArrayIndexOutOfBoundsException)

java - 没有 API 时如何获取 Android Market 数据?

php - 发送到 mysql 的表单上的链接和样式损坏,是因为 mysql_real_escape_string 吗?

sql-server - 在具有可变列数的 T-SQL 返回表中具有表值函数