kèo bóng đá phápcung cấp haikèo bóng đá pháp'sKiểu kèo bóng đá phápbyteahoặc bằng cách sử dụngĐối tượng lớnTính năng lưu trữoidtrong bảng của bạn.
Để xác định phương pháp nào phù hợp, bạn cần phảibyteaKiểu dữ kèo bóng đá pháp không phù hợp để lưu trữ rấtbyteacó thể chứa tới 1 GB kèo bóng đá pháp, nó sẽRAM) để xử lý một giá trị lớn như vậy. Lớn
7.2 là bản phát hành đầu tiên củaJDBCTrình điều khiển hỗ trợbyteaKiểu dữ kèo bóng đá pháp. Sự ra đời của điều nàygetBytes ()
, setBytes ()
, getBinaryStream ()
vàsetBinaryStream ()
hoạt động trênbyteaKiểu dữ kèo bóng đá pháp. Trong 7.1 Các phương thức này hoạt động trênoidKiểu dữ kèo bóng đá pháp được liên kết với lớntương thích
thuộc tính trênKết nối
đến a7.1
Để sử dụngbyteaKiểu dữ kèo bóng đá pháp bạn nêngetBytes ()
,
setBytes ()
, getBinaryStream ()
hoặcsetBinaryStream ()
Phương pháp.
Để sử dụng chức năng đối tượng lớn, bạn có thể sử dụngLargeObject
APIĐược cung cấp bởikèo bóng đá pháp JDBCtrình điều khiển hoặc bằng cách sử dụnggetBlob ()
vàsetBlob ()
Phương pháp.
quan trọng:chokèo bóng đá pháp, bạn phải truy cập lớnSQLGiao dịch. Bạn sẽ mở một giao dịch bằng cách sử dụng
setAutoCommit ()
Phương pháp với mộtSai.
Lưu ý:Trong một bản phát hành trong tương lai củaJDBCtrình điều khiển,
getBlob ()
vàsetBlob ()
Phương pháp có thể không còn tương tácbyteaKiểu dữ kèo bóng đá pháp. Vì vậy, nó được khuyến nghị rằng bạnLargeObject
APINếu bạn có ý định sử dụng
Ví dụ 5-4. Ví dụ kèo bóng đá pháp
Ví dụ: giả sử bạn có một bảng chứa tệpbyteacột:
Tạo hình ảnh bảng (văn bản imgname, img bytea);
Để chèn một hình ảnh, bạn sẽ sử dụng:
Tệp tệp = Tệp mới ("MyImage.gif");
ở đây,setBinaryStream ()
Chuyển một số byte đã đặt từ một luồng vào cộtbytea. Điều này cũng có thể đã đượcsetBytes ()
Phương phápbyte []
.
Truy xuất một hình ảnh thậm chí còn dễ dàng hơn. (Chúng tôi sử dụngPreparedStatement
ở đây, nhưngcâu lệnh
lớp có thể được sử dụng như nhau.)
PreadStatement PS = con.Preparestatement ("Chọn IMG từ hình ảnh trong đó imgname =?");
Ở đây kèo bóng đá pháp được lấy dưới dạngbyte []
. Bạn có thể đã sử dụng mộtInputStream
Đối tượng thay thế.
Ngoài ra, bạn có thể lưu trữ một tệp rất lớn vàLargeObject
APIĐể lưu trữ tệp:
Tạo bảng Imageslo (văn bản imgname, imgoid oid);
Để chèn một hình ảnh, bạn sẽ sử dụng:
// Các cuộc gọi API của LarmObject phải nằm trong giao dịch
Truy xuất hình ảnh từ đối tượng lớn:
// Tất cả các cuộc gọi API lớn phải nằm trong giao dịch