sql >> Databasteknik >  >> RDS >> Oracle

Java SQL-undantag:Stängd resultatuppsättning:nästa även om varken anslutning eller resultatuppsättning stängs

Dina try-with-resources gör close ResultSet , men det är inte det verkliga problemet. Du måste ställa in Statement före du kör det (och föredrar PreparedStatement och bindningsparametrar). Något liknande,

public Integer findByName(String name) throws SQLException {
    String sql = "select id from artists where name=?";
    Connection con = Database.getConnection();
    try (PreparedStatement stmt = con.prepareStatement(sql)) {
        stmt.setString(1, name);
        try (ResultSet rs = stmt.executeQuery()) {
            return rs.next() ? rs.getInt(1) : null;
        }
    }
}



  1. Använder du mysql concat() i WHERE-satsen?

  2. BESTÄLL EFTER skick

  3. Ladda data i filen MySQL MacOS

  4. Hur får man maximalt för ett fält baserat på ett datum och får andra fält också?