"SQLException: Operasi Tidak Dibenarkan Selepas ResultSet Ditutup" - Penyelesaian Masalah dan Penyelesaian
Menghadapi "java.sql.SQLException: Operasi tidak dibenarkan selepas ResultSet ditutup" pengecualian biasanya menunjukkan masalah dengan pengendalian ResultSets dalam kod Java anda. Untuk menyelesaikan isu ini, mari kita teliti senario yang dibentangkan dalam soalan.
Coretan kod yang disediakan melibatkan pelaksanaan berbilang pertanyaan dalam blok cuba-tangkap. Ia bermula dengan menggunakan objek Penyata untuk mendapatkan semula data daripada jadual "pengguna", diikuti dengan menanyakan jadual "profil" untuk menyediakan operasi kelompok menggunakan objek PreparedStatement.
Masalah timbul dalam kaedah getStuff() , di mana ResultSet diperoleh tanpa ditutup, melanggar tingkah laku lalai Penyata. Dengan membuka berbilang ResultSets secara serentak daripada objek Statement yang sama, kod tersebut melanggar jangkaan bahawa hanya satu ResultSet boleh dibuka pada satu masa.
Untuk membetulkan isu ini, adalah penting untuk memastikan ResultSets ditutup secara eksplisit apabila ia tidak diperlukan lagi. Untuk kod yang dimaksudkan, ini bermakna menambah panggilan ke rs.close() selepas mengambil data dalam kedua-dua objek ResultSet (rs dan rs2) dan dalam kaedah getStuff().
Selain itu, perlu diperhatikan bahawa sementara sambungan pangkalan data direka bentuk untuk boleh diguna semula, biasanya disyorkan untuk mencipta objek Pernyataan baharu untuk setiap pertanyaan untuk mengekalkan prestasi optimum. Ini amat penting apabila berurusan dengan operasi kelompok, kerana ia memastikan semua pertanyaan dilaksanakan menggunakan Pernyataan yang sama.
Dengan mengikuti pengesyoran ini, anda boleh berjaya menyelesaikan pengecualian "Operasi tidak dibenarkan selepas ResultSet ditutup" dan memastikan pengendalian ResultSets yang betul dalam kod Java anda.
Atas ialah kandungan terperinci Mengapa Saya Mendapat 'SQLException: Operasi Tidak Dibenarkan Selepas ResultSet Ditutup' dalam Kod Java Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!