sql >> Database >  >> RDS >> Oracle

Java SQL-uitzondering:Gesloten resultatenset:volgende, ook al wordt geen verbinding of resultaatset gesloten

Uw try-with-resources doet close de ResultSet , maar dat is niet het echte probleem. U moet de Statement . instellen voor je voert het uit (en geeft de voorkeur aan PreparedStatement en bindparameters). Iets als,

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. DATEDIFF_BIG() Voorbeelden in SQL Server

  2. Hoe kan ik het verschil tussen hoofdletters en kleine letters negeren bij het zoeken met mysql

  3. SQL rij-retourvolgorde

  4. Postgres Match Alle matrixwaarden met dezelfde kolom met en voorwaarde