cuốn sách gpt4 ai đã làm

java - Nhiều câu lệnh trong một ResultSet/ResultSet.next() trả về sai

In lại Tác giả: Vũ trụ không gian Thời gian cập nhật: 2023-11-04 09:33:42 27 4
mua khóa gpt4 Nike

Tôi đang sử dụng hai truy vấn khác nhau để chọn dữ liệu từ hai bảng. Tôi đang sử dụng kết nối và tập hợp kết quả. Cả hai bảng đều được điền, nhưng resultset.next() cho truy vấn thứ hai trả về sai, mặc dù nó phải đúng.

Tôi cũng đã thử sử dụng hai Chuẩn bị sẵn sàng và Kết nối khác nhau, nhưng cả hai đều không hiệu quả với tôi.

Nguồn dữ liệu ds = null;
Kết nối c = null;
Chuẩn bị sẵn sàng ps = null;
Chuỗi sql = "CHỌN * TỪ BẢNG1"
Chuỗi sql2 = "CHỌN * TỪ TABLE2"

ds = // Nguồn dữ liệu của tôi
c = ds.getConnection();

ps = c.prepareStatement(sql);
ResultSet resultSet = ps.executeQuery();

trong khi (resultSet.next()) {
// làm gì đó
// hoạt động
}

ps.close();


ps = c.prepareStatement(sql2);
resultSet = ps.executeQuery();

trong khi (resultSet.next()) {
// làm gì đó
// không hoạt động mặc dù TABLE2 đã được điền
}

ps.close();

Do đó, chương trình sẽ chuyển sang vòng lặp while thứ hai vì truy vấn sql2 đã trả về dữ liệu. Bạn đề xuất món gì? Cảm ơn!

câu trả lời hay nhất

Hãy thử đóng tập kết quả trước khi đóng câu lệnh đã chuẩn bị.

Ngoài ra, bạn nên sử dụng try/catch để dọn dẹp mọi thứ khi xảy ra ngoại lệ. Nhìn thấyCác tập kết quả và báo cáo JDBC có phải được đóng riêng biệt mặc dù Kết nối bị đóng sau đó không?

Về java - nhiều câu lệnh trong một ResultSet/ResultSet.next() trả về sai, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/56770170/

27 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress