Sekedar nambahin biar sedikit variasi utk codingnya.
Saya pakai ADODB.Stream object

Flow nya sbb::
Utk Save image to DB:
- load image file into VB Image object(utk nampilin di VB)
- load image file into ADODB.Stream object
- save ADODB.Stream object into DB via writeable recordset

Utk Show image from DB:
- baca via recordset, lalu write image data into ADODB.Stream object
- write ADODB.Stream object into image file (temporary file)
- load image file into VB Image object

Contoh table::
blob_table(
 id NUMBER,
 content BLOB)

Image1 = picture/image object di VB

Berikut codenya:

Private Sub SaveImageButton_Click()
Dim OraCon As ADODB.Connection
Dim OraRs  As New ADODB.Recordset
Dim OraBlob As New ADODB.Stream



Set OraCon = CreateObject("ADODB.Connection")
OraCon.ConnectionString = "Provider=OraOLEDB.Oracle;" & _
                          "Data Source=myoradb;" & _
                          "User ID=scott;" & _
                          "Password=tiger;"

OraCon.Open
MsgBox "Connected..."

OraRs.Open "select * from blob_table", OraCon, adOpenStatic, 
adLockOptimistic

OraBlob.Type = adTypeBinary
OraBlob.Open
OraBlob.LoadFromFile "c:\splash.gif"

If OraBlob.Size > 0 Then
 OraRs.AddNew
 OraRs("id") = 1
 OraRs("content") = OraBlob.Read
 OraRs.Update
 MsgBox "Success ...."
Else
 MsgBox "Nggak Success ...."
End If
OraBlob.Close
OraRs.Close
OraCon.Close

Set OraRs = Nothing
Set OraBlob = Nothing
Set OraCon = Nothing
        
End Sub


Private Sub ShowImageButton_Click()
Dim OraCon As ADODB.Connection
Dim OraRs  As New ADODB.Recordset
Dim OraBlob As New ADODB.Stream

Set OraCon = CreateObject("ADODB.Connection")
OraCon.ConnectionString = "Provider=OraOLEDB.Oracle;" & _
                          "Data Source=myoradb;" & _
                          "User ID=scott;" & _
                          "Password=tiger;"

OraCon.Open
MsgBox "Connected..."

OraRs.Open "select * from blob_table", OraCon, adOpenStatic, 
adLockOptimistic

OraRs.MoveFirst

MsgBox OraRs("id").Value


OraBlob.Type = adTypeBinary
OraBlob.Open

OraBlob.Write OraRs("content").Value

If OraBlob.Size > 0 Then
  OraBlob.SaveToFile "c:\orablob.gif"
  Image1.Picture = LoadPicture("c:\orablob.gif")
End If


OraBlob.Close
OraRs.Close
OraCon.Close

Set OraRs = Nothing
Set OraBlob = Nothing
Set OraCon = Nothing


End Sub

bw




--- In [email protected], Privida Kristiono <priv...@...> 
wrote:
>
> OO4O (Oracle Object for OLE) 
> adalah komponen yang disediakan oleh Oracle untuk mengakses 
database Oracle.komponen ini bawaan dari oracle, diinstall pada saat 
kita menginstall Oracle Client
> Ada 2 object OO4O yang bisa kita gunakan untuk mengakses BLOB yaitu 
melalui object OraSession dan object OraServerContohMisalkan kita 
punya tabel dengan struktur sbbCREATE TABLE part 
>  (   part_id          NUMBER,
>      part_name        VARCHAR2(20),
>      part_image       BLOB,
>      part_desc        CLOB,
>      part_collateral  BFILE
>  );
> 
> Untuk menyimpan recor baru beserta gambarnya kita bisa gunakan kode 
program berikut ini
> 
> Dim OraSn As OraSession 
> Dim OraDb As OraDatabase 
> Dim PartImage as OraBLOB
> Dim OraDyn As OraDynaset 
> Dim StrQ as String
> 
> 'Membuat Object OraSession. 
> Set OraSn = CreateObject("OracleInProcServer.XOraSession") 
> 
> 'Membuat Object OraDatabase dengan membuka connection dgn Oracle. 
> Set OraDbs = OraSn.OpenDatabase("MyServer", "scott/tiger", 0&) 
> 
> StrQ = "Insert Into part  " _
>        "Values (11,'LP2824', Null, " _
>        "'Speed 2 ips, 203 dpi, Printwidth 2", RS232/USB', Null)"
> OraDbs.ExecuteSQL (StrQ)
> 
> 'Membuat Dynaset yang memiliki field BLOB 
> StrQ = "Select part_id, part_image From part " & _ 
>        "Where part_id = 11"
> 
> set OraDyn = OraDatabase.CreateDynaset (StrQ,0) 
> set PartImage = OraDyn.Fields("part_image").Value 
> 
> 'menyalin seluruh isi file lp2824.jpg.jpg ke LOBS 
> OraDyn.Edit 
> PartImage.CopyFromFile "C:\PictureTmp\lp2824.jpg" 
> OraDyn.Update
> 
> keterangan (property dan method yang dimiliki OO4O) detailnya 
panjang sekali, coba anda baca di buku saya "Pemrogramam Database 
Tingkat Lanjut dengan VB6" Buku kedua, bab 3disitu anda bisa 
menemukan penjelasan lengkap mengakses BLOB (termasuk BFILE) dan 
contoh program aplikasinyaSalam,Privida 
> 
> 
> 
> 
> 
> --- On Fri, 1/9/09, calm boy <c4lm_...@...> wrote:
> From: calm boy <c4lm_...@...>
> Subject: Re: [indo-oracle] Re: menyimpan/menampilkan gambar 
database oracle dari Visual Basic
> To: [email protected]
> Date: Friday, January 9, 2009, 6:01 PM
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
>  
> 
> 
> 
> 
> 
> 
>     
>             terima kasih banyak pak untuk penjelasan nya. tapi yg 
mau saya tau OO4O itu apa ya?? terus penggunaan nya seperti apa. 
Terima kasih
> 
> 
> 
> --- On Fri, 1/9/09, Privida Kristiono <priv...@yahoo. com> wrote:
> 
> From: Privida Kristiono <priv...@yahoo. com>
> 
> Subject: Re: [indo-oracle] Re: menyimpan/menampilk an gambar 
database oracle dari Visual Basic
> 
> To: indo-oracle@ yahoogroups. com
> 
> Date: Friday, January 9, 2009, 10:59 AM
> 
> 
> 
> Untuk menyimpan gunakanlah field dengan type data BLOBuntuk 
mengaksesnya anda bisa menggunakan ADO atau OO4O
> 
> 
> 
> + dengan ADO, object gambar harus diaksens piece by piece dengan  
  GetChunk untuk mengambil dari field dan AppendChunk untuk 
menyimpan ke field + ada leih banyak method yang disediakan oleh 
OO4O untuk mengakses BLOB,    anda bisa menggunakan cara  multiple 
piece atau single pieceketerangan lebih lanjut bsia ada baca di buku 
saya "Pemrogramam Database Tingkat Lanjut dengan VB6" Buku kedua, 
bab 3Salam,Privida 
> 
> 
> 
> 
>       
> 
>     
>     
>       
>        
>       
>       
> 
> 
> 
> 
>       
> 
> 
> 
> 
>       
>       
> 
> 
>       
>       
>       
> 
> 
> 
> 
>       
> 
> [Non-text portions of this message have been removed]
>


Kirim email ke