Arkadaşlar merhaba Mysql veri tabanına aşağıdaki kod ile dosya yüklemesi yapıyorum. Ancak bu yüklediğim dosyayı tekrar bilgisayarıma kaydedemiyorum. Resim dosyası değil pdf,xls,dos gidi uzantısı farklı dosyalar olacak.
UniQuery1.SQL.Text := 'insert into tablo (alan) values (:dosya)';
UniQuery1.ParamByName('dosya').LoadFromFile(dosyaadi, ftBlob);
UniQuery1.ExecSQL;
Mysql LongBlob dosya yükleme kaydetme
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Re: Mysql LongBlob dosya yükleme kaydetme
Forumda yazılmıştı. Örnek JPG ama biliyorsun JPG veya başka format fark etmez. Teknik hepsi için geçerlidir.
bkz. bu başlık
Aşağıdaki örneği bir procedure olarak hazırlamıştım dilenen yerde kullanması kolaydır.
bkz. bu başlık
Aşağıdaki örneği bir procedure olarak hazırlamıştım dilenen yerde kullanması kolaydır.
bkz. [url=http://www.delphiturkiye.com/forum/viewtopic.php?f=2&t=33620&p=180886#p180890]bu başlık[/url] yazdı:Form'unda bir TImage ekle, adı Image1 olduğunu varsayarak aşağıdaki procedure işini görecektir...Kullanımı :Kod: Tümünü seç
procedure BlobResmiGoster( aDataSet:TDataSet; strJPGField:String; aImage: TImage ); Var stResim : TStream; JPG : TJPEGImage; begin stResim := aDataSet.CreateBlobStream(TBlobField(aDataSet.FieldByName( strJPGField )), bmRead); stResim.Seek(0, soFromBeginning); JPG := TJPEGImage.Create; JPG.LoadFromStream( stResim ); aImage.Picture.Assign( JPG ); JPG.Free; stResim.Free; end;
Örneğin IBQuery'nin OnAfterScroll olayında, sen Gridde gezerken görebilmek içinKod: Tümünü seç
procedure TForm1.IBQuery1AfterScroll(DataSet: TDataSet); begin BlobResmiGoster( IBQuery1, 'M_RESIM', Image1 ); // veya şu da olur // BlobResmiGoster( DataSet, 'M_RESIM', Image1 ); end;
Re: Mysql LongBlob dosya yükleme kaydetme
çok anlamadım yani dosyayı ekranda resim olarak göstermek değil niyetim. xls formatında yada uzantsı herne olursa olsun c:\xxx.xx olarak kaydetmek istediğimde ne yapacağımı anlamadım.
Re: Mysql LongBlob dosya yükleme kaydetme
Hocam söylediklerimden ziyade kodlara odaklanmanı rica edicem.
Bir STREAM oluşturduktan sonra dilersen dosyaya kaydedersin dilersen TCP üzerinden transfer edersin bu sana kalıyor.
Örnek sadece JPG için ama seni bu bağlamaz.
TStream tipi bir değişkeni TFileStream'e COPY edeceksin o kadar. Bu da otomatik olarak bilgisayarında fiziksel bir dosya haline bürünecektir.
Bir STREAM oluşturduktan sonra dilersen dosyaya kaydedersin dilersen TCP üzerinden transfer edersin bu sana kalıyor.
Örnek sadece JPG için ama seni bu bağlamaz.
TStream tipi bir değişkeni TFileStream'e COPY edeceksin o kadar. Bu da otomatik olarak bilgisayarında fiziksel bir dosya haline bürünecektir.