首頁 >資料庫 >mysql教程 >如何從 Java 中的準備語句中檢索自動增量 ID?

如何從 Java 中的準備語句中檢索自動增量 ID?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-15 01:45:02952瀏覽

How to Retrieve Autoincrement ID from Prepared Statements in Java?

從準備好的語句中擷取自動增量ID

在Java 資料庫查詢中使用準備好的語句時,從準備好的語句中檢索自動產生的鍵至關重要資料庫來引用新建立的記錄。

在您的範例中,使用有準備好的語句的 Statement.RETURN_GENERATED_KEYS 會引發錯誤。要解決此問題,請修改程式碼如下:

String sql = "INSERT INTO table (column1, column2) values(?, ?)";
stmt = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);

透過將Statement.RETURN_GENERATED_KEYS 作為參數傳遞給prepareStatement(),準備好的語句被配置為捕獲自動產生的金鑰。隨後,可以使用以下程式碼來擷取 ID:

stmt.executeUpdate();
if (returnLastInsertId) {
    ResultSet rs = stmt.getGeneratedKeys();
    rs.next();
    auto_id = rs.getInt(1);
}

此解決方案可讓您在使用預先準備語句插入記錄時成功擷取自增 ID。

以上是如何從 Java 中的準備語句中檢索自動增量 ID?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn