Autoinkrement-ID aus vorbereiteten Anweisungen abrufen
Bei der Verwendung vorbereiteter Anweisungen mit Java-Datenbankabfragen ist es wichtig, den automatisch generierten Schlüssel aus der abzurufen Datenbank, um auf den neu erstellten Datensatz zu verweisen.
In Ihrem Beispiel löst die Verwendung von Statement.RETURN_GENERATED_KEYS mit einer vorbereiteten Anweisung einen Fehler aus. Um dieses Problem zu beheben, ändern Sie den Code wie folgt:
String sql = "INSERT INTO table (column1, column2) values(?, ?)"; stmt = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);
Durch die Übergabe von Statement.RETURN_GENERATED_KEYS als Argument an PrepareStatement() wird die vorbereitete Anweisung so konfiguriert, dass sie den automatisch generierten Schlüssel erfasst. Anschließend kann der folgende Code verwendet werden, um die ID abzurufen:
stmt.executeUpdate(); if (returnLastInsertId) { ResultSet rs = stmt.getGeneratedKeys(); rs.next(); auto_id = rs.getInt(1); }
Mit dieser Lösung können Sie die Autoinkrement-ID erfolgreich abrufen, wenn Sie Datensätze mithilfe vorbereiteter Anweisungen einfügen.
Das obige ist der detaillierte Inhalt vonWie rufe ich die Autoinkrement-ID aus vorbereiteten Anweisungen in Java ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!