أريد حفظ صور فى قاعدة بيانات SQL عن طريق فورمة عن طريق إعطاء Image Path فى الفورمه
وهى تقوم بحفظها عن طريق Stored Procedure ، وماهى DataType المناسبة لحفظها ، وشكراً
أريد حفظ صور فى قاعدة بيانات SQL عن طريق فورمة عن طريق إعطاء Image Path فى الفورمه
وهى تقوم بحفظها عن طريق Stored Procedure ، وماهى DataType المناسبة لحفظها ، وشكراً

اخفظ اسم الصوره بس في الداتا بيز وحط الصوره نفسها في فولدر في المشروع اسمو مثلا image
وبس داتا تايب بتاعتها varchar عادي
وفوق كل ذي علم عليم
والله اعلم
الملك ------>محمد ابو تريكة

على اسم مصر التاريخ يقدر يقول ما شاء
أنا مصر عندي أحب وأجمل الأشياء
باحبها وهي مالكه الأرض شرق وغرب
وباحبها وهي مرميه جريحة حرب
باحبها بعنف وبرقة وعلى استحياء
واكرهها وألعن أبوها بعشق زي الداء
واسيبها واطفش في درب وتبقى هي ف درب
وتلتفت تلقيني جنبها في الكرب
والنبض ينفض عروقي بألف نغمة وضرب
على اسم مصر
الطريقة كالتالي :
أنشئ حقل في Database من نوع Binary اسمه stream
ثم استعمل الكود التالي لحفظ الصورة
OpenFileDialog op=new OpenFileDialog();
op.Filter ="Bitmap Files (*.BMP)|*.bmp |Gif (*.Gif)|*.gif|JPEG (*.JPG*.JPEG;*.JPE;*.JFIF)|*.JPG*.JPEG;*.JPE;*.JFIF|TIFF (*.TIF;*.TIFF)|*.TIF;*.TIFF|ICO (*.ICO)|*.ICO ";
op.ShowDialog();
if(!(op.FileName==""))
{
byte[] content = ReadBitmap2ByteArray(op.FileName);
StoreBlob2DataBase(content);
}
تحويل الصورة لبايت
protected static byte[] ReadBitmap2ByteArray(string fileName)
{
using(Bitmap image = new Bitmap(fileName))
{
MemoryStream stream = new MemoryStream();
image.Save(stream, System.Drawing.Imaging.ImageFormat.Bmp);
return stream.ToArray();
}
}
تخزين الصورة في قاعدة البيانات
protected static void StoreBlob2DataBase(byte[] content)
{
SqlConnection con =new SqlConnection (DbConnectioncls.ConnectionString());
DbConnectioncls.Open_Connection(con);
//con.Open();
try
{
SqlCommand insert = new SqlCommand(
"update Company_Info set [stream] = (@image) where company_id=1",con);
SqlParameter imageParameter =
insert.Parameters.Add("@image", System.Data.SqlDbType.Binary);
imageParameter.Value = content;
imageParameter.Size = content.Length;
insert.ExecuteNonQuery();
}
finally
{
DbConnectioncls.Close_Connection(con);
}
}والكود التالي لقرائتها من قاعدة البيانات
string sqlstr;
sqlstr="select * from Company_Info_Vw where Company_ID = '1'";
SqlCommand DBCmd = new SqlCommand (sqlstr, con );
SqlDataReader dr =null;
dr = DBCmd.ExecuteReader();
if (dr.HasRows)
{
while (dr.Read())
{
if (dr["stream"] != DBNull.Value )
{
byte[] content = (byte[])dr["stream"];
MemoryStream stream = new MemoryStream(content);
Bitmap image = new Bitmap(stream);
pictureBox1.Image = image;
}
else
pictureBox1.Image = null;إن شاء الله أكون قد وصلت المعلومة
يا أيها الناس قولو لا إله إلا الله تفلحوا وتملكوا بها العرب وتذل لكم العجم وإذا آمنتم كنتم ملوكا في الجنة
جزاكم الله خيرا
فعلا موضوع مهم و مفيد جدا
سأل الممكن المستحيل اين تسكن؟ قال في عقول الضعفاء
اشهد أن لا اله الا الله و اشهد أن محمداًً رسول الله
مشكور جدا الحل يعمل بشكل جيد جدا
mr_boss كتب:أشكركم أخوتى الكرام على الاستجابة السريعة ، جزاكم الله خيراً
اريد ان اعرف كيف اظهر الصورة فى كريستال ريبورت