Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Mendapatkan Saiz Java `java.sql.ResultSet` dengan Cekap?

Bagaimana untuk Mendapatkan Saiz Java `java.sql.ResultSet` dengan Cekap?

Mary-Kate Olsen
Mary-Kate Olsenasal
2025-01-16 14:23:01190semak imbas

How to Efficiently Get the Size of a Java `java.sql.ResultSet`?

Menentukan Kiraan Baris java.sql.ResultSet

Walaupun kelihatan mudah, mendapatkan terus bilangan baris dalam java.sql.ResultSet tidak disokong oleh kaedah terbina dalam seperti size() atau length(). Berikut ialah dua penyelesaian yang cekap:

*Kaedah 1: `COUNT()` SQL Query**

Cara paling berkesan ialah melaksanakan pertanyaan SELECT COUNT(*) FROM ... berasingan terhadap pangkalan data anda. Ini secara langsung mendapatkan semula kiraan baris tanpa perlu mengambil keseluruhan set hasil.

Kaedah 2: Kedudukan Kursor

Pendekatan ini memanfaatkan kursor ResultSet:

<code class="language-java">int rowCount = 0;
if (rs != null) {
    try {
        rs.last();
        rowCount = rs.getRow();
    } catch (SQLException e) {
        // Handle SQLException appropriately
        e.printStackTrace(); // Or log the exception
    }
}</code>

Ini menggerakkan kursor ke baris terakhir dan kemudian mendapatkan semula nombor barisnya, memberikan jumlah kiraan baris. Pengendalian ralat adalah penting di sini untuk mengurus potensi SQLExceptions.

Kedua-dua kaedah mengelakkan lelaran melalui semua baris, menawarkan kelebihan prestasi berbanding alternatif yang kurang cekap. Pilih kaedah yang paling sesuai dengan keperluan dan konteks aplikasi anda.

Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Saiz Java `java.sql.ResultSet` dengan Cekap?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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