Pengecualian ResultSet: "Sebelum Mula Set Keputusan"
Apabila mendapatkan semula data daripada objek ResultSet, adalah penting untuk meletakkan kursor dengan betul untuk elakkan pengecualian. Dalam coretan kod yang disediakan:
ResultSet result = prep.executeQuery(); result.beforeFirst();
Kursor pada mulanya diletakkan sebelum baris pertama dalam set hasil menggunakan result.beforeFirst(). Selepas itu, percubaan dibuat untuk mendapatkan semula data daripada baris "pertama" menggunakan result.getString(1):
String foundType = result.getString(1);
Namun, memandangkan kursor tidak menghala ke mana-mana baris pada masa ini, operasi ini mencetuskan " Sebelum permulaan keputusan set" pengecualian.
Pendekatan yang betul adalah untuk menggerakkan kursor ke baris pertama sebelum mendapatkan semula data:
result.next(); String foundType = result.getString(1);
Ini memastikan kursor menghala ke baris pertama sebenar dalam set hasil, membolehkan anda mengakses data dengan jayanya.
Ringkasnya, apabila bekerja dengan objek ResultSet, ia adalah penting untuk meletakkan kursor dengan betul sama ada dengan melakukan result.next() atau menggunakan semakan dan gelung bersyarat untuk melelaran melalui keputusan. Ini mengelakkan pengecualian dan memastikan bahawa operasi pengambilan data dilakukan pada baris yang sesuai.
Atas ialah kandungan terperinci Mengapa Mendapatkan Data daripada ResultSet Membuang Pengecualian 'Sebelum Mula Set Keputusan'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!