Heim >Datenbank >MySQL-Tutorial >Wie rufe ich die Autoinkrement-ID aus vorbereiteten Anweisungen in Java ab?

Wie rufe ich die Autoinkrement-ID aus vorbereiteten Anweisungen in Java ab?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-15 01:45:02952Durchsuche

How to Retrieve Autoincrement ID from Prepared Statements in Java?

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn