Rumah > pangkalan data > tutorial mysql > Bagaimanakah saya boleh mendapatkan ID kenaikan automatik selepas memasukkan data menggunakan Penyata Disediakan dalam Java?

Bagaimanakah saya boleh mendapatkan ID kenaikan automatik selepas memasukkan data menggunakan Penyata Disediakan dalam Java?

Susan Sarandon
Lepaskan: 2024-11-17 11:34:01
asal
821 orang telah melayarinya

How can I retrieve an auto-increment ID after inserting data using Prepared Statements in Java?

Mengambil ID Autoincrement Menggunakan Penyata Disediakan dalam Java

Apabila memasukkan data ke dalam jadual dengan kunci utama autokenaikan, ia boleh diingini untuk mendapatkan semula ID yang dijana untuk rekod baharu. Walaupun pendekatan AutoGeneratedKeys berfungsi untuk objek pernyataan standard, ia tidak boleh digunakan secara langsung dengan pernyataan yang disediakan.

Menggunakan Penyata Disediakan untuk Operasi Sisipan

Dengan pernyataan yang disediakan, anda boleh melaksanakan pertanyaan SQL dengan parameter dinamik. Untuk memasukkan data dengan pernyataan yang disediakan, gunakan format berikut:

String sql = "INSERT INTO table (column1, column2) values(?, ?)";
PreparedStatement stmt = conn.prepareStatement(sql);
Salin selepas log masuk

Dengan menetapkan nilai parameter sebelum memanggil executeUpdate(), anda boleh melaksanakan pertanyaan yang sama dengan nilai yang berbeza beberapa kali.

Mendapatkan ID Autokenaikan dengan Penyata Disediakan

Untuk mendapatkan semula ID autokenaikan yang dijana oleh pernyataan yang disediakan, anda perlu menentukan Penyata.RETURN_GENERATED_KEYS sebagai pilihan semasa membuat pernyataan yang disediakan:

PreparedStatement stmt = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);
Salin selepas log masuk

Selepas melaksanakan pertanyaan, anda boleh mendapatkan semula ID autokenaikan menggunakan kod berikut:

if (returnLastInsertId) {
   ResultSet rs = stmt.getGeneratedKeys();
   rs.next();
   auto_id = rs.getInt(1);
}
Salin selepas log masuk

Dengan membuat sedikit pengubahsuaian pada kod anda, anda boleh berjaya mendapatkan autokenaikan ID apabila menggunakan pernyataan yang disediakan untuk operasi sisipan.

Atas ialah kandungan terperinci Bagaimanakah saya boleh mendapatkan ID kenaikan automatik selepas memasukkan data menggunakan Penyata Disediakan dalam Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan