PDA

View Full Version : سوال: چگونه یک تصویر از imagebox را درون یک جدول از بانک بگذاریم؟



amin3271
شنبه 05 مرداد 1387, 18:36 عصر
چگونه یک تصویر از imagebox را درون یک جدول از بانک بگذاریم؟
به طور مثال اگر خواستیم با کلیک بر روی یک دکمه دتصویر شخصی را در رکورد مربوط به جدول اطلاعات شخصی افراد ذخیره کنیم چکار کنیم؟

ali_kashani
یک شنبه 06 مرداد 1387, 00:23 صبح
سلام

به اين پست يك نگاه كن

http://barnamenevis.org/forum/showthread.php?p=539724#post539724

Sajjad.Aghapour
یک شنبه 06 مرداد 1387, 00:44 صبح
سلام دوست عزیز.
اگه یه سرچ کنید کلی چیزی پیدا می کنید.ولی از اونجایی که یه برنامه مینوشتم که این مطلب توش بود کدها رو برات میذارم....


cmd.CommandText = "insert into picture (image) values(@image)";
cmd.Connection = conn;

MemoryStream ms = new MemoryStream();
pictureBox1.Image.Save(ms, pictureBox1.Image.RawFormat);
byte[] buffer = ms.GetBuffer();

if (cmd.Parameters.Contains("@image") == false)
cmd.Parameters.Add("@image", SqlDbType.VarBinary).Value = buffer;
else
cmd.Parameters["@image"].Value = buffer;

conn.Open();
cmd.ExecuteNonQuery();
conn.Close();

این کل کدهایی بود که من توی برنامم ازشون استفاده کردم.ولی خواهشا دیگه بحثش رو تازه نکنید چون تا حالا خیلی بحث شده.
موفق باشید...

amin3271
یک شنبه 06 مرداد 1387, 21:53 عصر
با عرض تشکر حالا اگه خواستیم عکس رو باز یابی کنیم چکار باید بکنیم؟

Sajjad.Aghapour
یک شنبه 06 مرداد 1387, 23:38 عصر
SqlDataReader reader;
byte[] pic = null;
cmd.CommandText = "select image from picture";
cmd.Connection = conn;
conn.Open();
reader = cmd.ExecuteReader();
if (reader.Read())
{
pic = (byte[])reader.GetValue(0);
MemoryStream ms = newMemoryStream(pic);
Bitmap bmp = newBitmap(ms);
pictureBox1.Image = bmp;
}
reader.Close();
conn.Close();

داخل GetValue باید اندیس ستونی که عکس در اون قرار داره قرار بدی.