Phiên bản không được hỗ trợ:7.4 / 7.3 / 7.2 / 7.1
Tài liệu này dành cho phiên bản không được hỗ trợ của PostgreSQL.
Bạn có thể muốn xem cùng một trang chohiện tạiPhiên bản hoặc một trong các phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

31.3. kèo bóng đá cúp c2 quả

Bất cứ khi nào bạn muốn phát kèo bóng đá cúp c2SQLCâu lệnh cho cơ sở dữ liệu, bạn yêu cầucâu lệnhhoặcChuẩn bịphiên bản. Khi bạn cócâu lệnhhoặcChuẩn bị, bạn có thể sử dụng vấn đề kèo bóng đá cúp c2. Điều này sẽ trả lại mộtresultsetphiên bản, chứa toàn bộ kèo bóng đá cúp c2 quả (xemPhần 31.3.1ở đây cho cách thay đổi kèo bóng đá cúp c2 vi này).Ví dụ 31-1Minh họa Quá trình này.

Ví dụ 31-1. Xử lý một kèo bóng đá cúp c2 đơn giản trongJDBC

Ví dụ này sẽ đưa ra một kèo bóng đá cúp c2 đơn giản và in ra Cột đầu tiên của mỗi hàng bằng cách sử dụngcâu lệnh.

câu lệnh st = db.CreateStatement ();
Resultset rs = St.ExecuteQuery ("chọn * từ mytable trong đó cộtfoo = 500");
while (rs.next ()) 
    System.out.print ("Cột 1 đã trả về");
    System.out.println (rs.getString (1));

7778_7840Chuẩn bịvà một ràng buộc giá trị trong kèo bóng đá cúp c2.

int foovalue = 500;
Đã chuẩn bị st = db.preparestatement ("chọn * từ mytable where cộtfoo =?");
St.SetInt (1, foovalue);
Resultset rs = St.ExecuteQuery ();
while (rs.next ()) 
    System.out.print ("Cột 1 đã trả về");
    System.out.println (rs.getString (1));

31.3.1. Nhận kèo bóng đá cúp c2 quả dựa trên một con trỏ

Theo mặc định, trình điều khiển thu thập tất cả các kết quả cho kèo bóng đá cúp c2 cùng một lúc. Điều này có thể bất tiện cho các tập dữ liệu lớn để Trình điều khiển JDBC cung cấp một phương tiện dựa trênresultsetTrên con trỏ cơ sở dữ liệu và chỉ tìm nạp một số lượng nhỏ hàng.

Một số lượng nhỏ các hàng được lưu trong bộ nhớ đệm ở phía máy khách của kèo bóng đá cúp c2 nối và khi cạn kiệt khối hàng tiếp theo là lấy bằng cách định vị lại con trỏ.

Ví dụ 31-2. Đặt kích thước tìm nạp để biến con trỏ bật và tắt.

Thay đổi mã thành chế độ con trỏ cũng đơn giản như cài đặt Kích thước tìm nạp củacâu lệnhđến kích thước thích hợp. Đặt kích thước tìm nạp trở lại 0 sẽ khiến tất cả các hàng được lưu trữ (kèo bóng đá cúp c2 vi mặc định).

câu lệnh st = db.CreateStatement ();
// Bật sử dụng con trỏ trên.
St.SetFetchSize (50);
Resultset rs = St.ExecuteQuery ("chọn * từ mytable");
while (rs.next ()) 
   System.out.print ("Một hàng đã được trả về.");

31.3.2. Sử dụngcâu lệnhhoặcPreparedStatementgiao diện

Điều sau đây phải được xem xét khi sử dụngcâu lệnhhoặcPreparedStatementgiao diện:

  • Bạn có thể sử dụng mộtcâu lệnh10338_10538resultsetcó thể tồn tại mỗicâu lệnhhoặcChuẩn bịTại một thời điểm nhất định.

  • Nếu bạn cần thực hiện kèo bóng đá cúp c2 trong khi xử lýresultset, bạn có thể đơn giản Tạo và sử dụng một kháccâu lệnh.

  • Nếu bạn đang sử dụng các chủ đề và một số cơ sở dữ liệu, bạn phải sử dụng riêngcâu lệnhcho mỗi luồng. Tham khảoPhần 31.9Nếu bạn là nghĩ đến việc sử dụng các chủ đề, vì nó bao gồm một số quan trọng điểm.

  • Khi bạn hoàn thành bằng cách sử dụngcâu lệnhhoặcChuẩn bịBạn nên đóng Nó.

31.3.3. Sử dụngresultsetGiao diện

Sau đây phải được xem xét khi sử dụngresultsetgiao diện:

  • Trước khi đọc bất kỳ giá trị nào, bạn phải gọinext (). Điều này trả về đúng nếu có một kèo bóng đá cúp c2 quả, nhưng quan trọng hơn, nó chuẩn bị hàng xử lý.

  • dướiJDBCThông số kỹ thuật, bạn chỉ nên kèo bóng đá cúp c2 cập một trường một lần. Nó là an toàn nhất để tuân thủ quy tắc này, mặc dù tại thời điểm hiện tại, ThePostgreSQLTrình điều khiển sẽ Cho phép bạn kèo bóng đá cúp c2 cập một trường bao nhiêu lần tùy thích.

  • Bạn phải đóng mộtresultsetbằng cách gọiĐóng ()Sau khi sử dụng xong Nó.

  • Một khi bạn thực hiện một kèo bóng đá cúp c2 khác vớicâu lệnhĐược sử dụng để tạo mộtresultset, hiện đang mởresultsettrường hợp được đóng lại tự động.