gpt4 book ai didi

java - 如何关闭().executeUpdate?

转载 作者:行者123 更新时间:2023-12-01 07:51:17 26 4
gpt4 key购买 nike

我想知道,如何关闭 JAVA(JDBC) 中的executeUpdate 语句?

例如:

String sql = "UPDATE. .. . ..  Whatever...";
ResultSet rs = stmt.executeQuery(sql);
rs.close();

但我无法执行此更新。所以我用谷歌搜索发现我需要使用executeUpdate,但是之后如何关闭该语句?

String sql = "UPDATE. .. . ..  Whatever...";
int rs = stmt.executeUpdate(sql);
rs.close(); ??? <------

最佳答案

您不关闭executeUpdate,而是关闭Statement:

rs.close();   // Closes the ResultSet
stmt.close(); // Closes the Statement

通常最好使用 try-with-resources statement 来做到这一点:

String sql = "UPDATE. .. . ..  Whatever...";
try (
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(sql);
) {
// Process results
}

try-with-resources 将为您关闭 StatementResultSet。它是在 Java 7(2011 年)中添加的。

<小时/>

附注:您已表明您正在使用 Statement 并调用 executeUpdate(String)。只要 SQL 中没有外部来源的信息(您没有从用户输入或其他系统等接收到任何信息),那就没问题。不过,在更常见的情况下,您需要使用 PreparedStatement,调用 setXyz 来设置参数,然后调用 executeUpdate() (零参数版本)。这个习惯可以让你免受 SQL 注入(inject)的侵害。更多解释和示例请参见这个有用的网站:http://bobby-tables.com/ .

关于java - 如何关闭().executeUpdate?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37155866/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com