PDA

View Full Version : سوال: چگونگی Update رکوردی شامل نوع داده ی Image



ztx4
شنبه 23 بهمن 1389, 00:09 صبح
درود بر اساتید گرامی
می خوام رکوردی رو که شامل عکس هست رو در sqlServer با دستور Update به روز کنم.

اما نمی تونم.عکس آپ نمی شه!!!
یه مثال از کد هایی که به کار بردم می گذارم:


private void updateimage()
{
string s = @"select image from stude where studecode="+stcode;
DataSet ds = new DataSet();

SqlDataAdapter ad = new SqlDataAdapter(s, con);
ad.Fill(ds, "stude");

Image im = null;
im = studepic.BackgroundImage;
MemoryStream mstream = new MemoryStream();
im.Save(mstream, im.RawFormat);
byte[] arrimage = mstream.GetBuffer();


SqlCommandBuilder cmd = new SqlCommandBuilder(ad);
ds.Tables["stude"].Rows[0][0] = arrimage;
ad.Update(ds, "stude");

}



خیلی جستجو کردم.نشد.
لطفا راهنمایی کنید
مرررسیی

ztx4
جمعه 29 بهمن 1389, 00:01 صبح
دوستان گل من خودم جواب رو پیدا کردم.
اینجا هم مطرح می کنم تا کمکی بشه برای دستانی که در آینده جستجو می کنند:

کد بالا رو به شکل زیر تغییر دادم و مشکلم حل شد:


globalclass gs = new globalclass();
SqlConnection con = new SqlConnection(gs.connstring);

SqlCommand update = new SqlCommand("Update stude set image=@image where studecode=" + stcode, con);
update.Parameters.Add("@image", SqlDbType.Binary);

Image im = null;
im = studepic.BackgroundImage;
MemoryStream mstream = new MemoryStream();
im.Save(mstream, im.RawFormat);
byte[] arrimage = mstream.GetBuffer();
update.Parameters[0].Value = arrimage;
update.Parameters[0].Size = arrimage.Length;

con.Open();
update.ExecuteNonQuery();
con.Close();