Soru & Cevap

C# Windows Form uygulamasında vertabanına dosya kayetme

13.07.2016 - 04:35

Arkadaslar Windows Form ile veritabanına dosya kaydetme işlemi nasıl gercekleştirilir?

564 Görüntülenme

1 Cevap

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.

Profile picture for user oguzhanoskay
oguzhanoskay
13.07.2016 - 08:37

Aslında dosyayı veritabanına kaydetmek çok işimize gelmez çoğu zaman çünkü database çabucak şişecektir.Bunun yerine dosyaları Ftp yada bilgisayarda bir dizine aktarman ve bunun dosya yolunu veritabanına kaydetmen daha sağlıklı olacaktır. Ama ben genede kaydedeceğim dersen sanırım aşağıdaki örnek işini görecektir.

//Resimimizi FileStream metoduyla okuma modunda açıyoruz.
 
FileStream  fs=new FileStream(resimPath,FileMode.Open,FileAccess.Read);
 
//BinaryReader ile byte dizisi ile FileStream arasında veri akışı sağlanıyor.
 
BinaryReader br = new BinaryReader(fs);
 
/*ReadBytes ile FileStreamde belirtilen resim dosyasındaki byte lar
 
byte dizisine aktarılıyor.
 
*/
 
byte[] resim = br.ReadBytes((int)fs.Length);
 
br.Close();
 
fs.Close();
 
//Sql Veritabanı ve Kayıt işlemleri
 
SqlConnection bag = new SqlConnection(@"Data Source=.\SQLEXPRESS;Initial Catalog=data;Integrated Security=True");
 
SqlCommand kmt = new SqlCommand("insert into resimbil(resim) Values (@image) ",bag);
 
kmt.Parameters.Add("@image", SqlDbType.Image, resim.Length).Value = resim;
try
 
{
 
bag.Open();
 
kmt.ExecuteNonQuery();

bag.Close();

*Kod alıntıdır

Pınar
14.07.2016 - 08:54
Tamamdır çok teşekkür ederim..