Blob (Binary Large Object), adında da anlaşıldığı gibi veritabanı sütununa büyük binary (ikili) verileri saklama yöntemidir. Farklı veri tabanlarında farklı şekilde ele alınır, fakat ortak karekteristik özelliklerini şöyle sıralayabiliriz.
1. Binary (ikili) verileri saklar.
2. Blob verileri maksimum 4 GB büyüklügündeki verilerdir.
3. Genelde tablo içine direk olarak saklanmaz. Farklı saklama alanına saklanır ve tablo üzerindeki referans adresi ile erişilir.
Diğer büyük veri nesneleri
1. CLOB, büyük karakter nesneleridir.
2. BFILE ,veritabanı dışında saklanan 4 GB tan büyük kütüklere (file) referans gösterir.
Java 1.2 den beri java.sql.Blob interface’i olarak tanımlıdır. Java.sql.ResultSet interface’inden getBlob() metodu ile donen degeri Blob interface’ine atarız ve bu interface metodları üzerinde güncelleme yapabiliriz.
Statement stmt = connection.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM table");
Blob blob = rs.getBlob();
Tersi durumu nasıl ele alabiliriz? Java da Blob nesnesini olusturup, ilgili veriyi atamak ve veritabanına kaydetmek veya ORM yontemi ile eşleştirmek.
Java 1.4 te Blob’u tanımlayamıyoruz, ama java 1.5’e eklenen SerialBlob sınıfı ile bu eksiklik giderilmiş. Java 1.4 te çalışanlar, Java 1.5 te SerialBlob ve SerialException sınıflarını projenize dahil edebilirsiniz. Böylece SerialBlob’u Java 1.4 te Blob interface’ni tanımlamak için kullanabilirsiniz aşağıdaki gibi.
Blob blob = new SerialBlob( byte[] byteArray );
Amacımız olan Blob nesnesini Java 1.4 te bu şekilde tanımlamış oluruz.
Hiç yorum yok:
Yorum Gönder