What is the output of executing a JDBC query with ResultSet and calling rs.next() once?
4 phương ánCó giải thích
Các phương án trả lời
Chọn một phương ánLời giảiChọn phương án để mở
Đáp án đúng: "Moves to first row". Ngay sau khi truy vấn trả về, con trỏ của tập kết quả nằm trước dòng đầu tiên, nên lần gọi next đầu tiên đẩy con trỏ xuống dòng đầu và trả về true nếu có dữ liệu, false nếu kết quả rỗng; đó là lý do mã đọc dữ liệu luôn mở bằng một lần gọi next hoặc một vòng lặp lấy next làm điều kiện. Lựa chọn "Returns null" sai kiểu: next trả về giá trị luận lý chứ không trả về đối tượng, còn giá trị từng cột mới lấy bằng các phương thức đọc theo tên hoặc số thứ tự cột. Lựa chọn "Throws exception" chỉ xảy ra khi tập kết quả hay câu lệnh đã bị đóng, không phải hành vi thường của lần gọi đầu. Lựa chọn "Closes the connection" nhầm hẳn vai: đóng kết nối là việc của lời gọi đóng, và chính vì next không đóng gì nên ta phải tự giải phóng tài nguyên sau khi đọc xong.
Cùng phần 3
Xuất hiện trong 1 bộ đề
Đi tiếp từ đây