منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : حفظ واستدعاء الصور في sql server
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
يعطيكم العافية جميعاً  Smile

بحثت في المنتدى عن كيفية حفظ صورة واسترجاعها نفسها وليس مسارها باستهدام SQL Server في VB.NET
فوجدت الموضوع "حفظ واستدعاء الصور في sql server" ولكن الرابط لم يعمل يبدو ان الموضوع قد حذف  Undecided

ملاحظة
انا استخدمت الكود التالي لحفظ الصورة ونجح ولكن كود الاسترجاع فشل


إقتباس :  Dim cmd As New SqlCommand("update Info set id=@id,name=@name,adress=@adress,phone=@phone,email=@email,PW=@PW,img=@img  where ID=@id", Sqlconn)
                            cmd.Parameters.AddWithValue("@ID", "1")
                            cmd.Parameters.AddWithValue("@name", TextBox1.Text)
                            cmd.Parameters.AddWithValue("@adress", TextBox2.Text)
                            cmd.Parameters.AddWithValue("@phone", TextBox3.Text)
                            cmd.Parameters.AddWithValue("@email", TextBox4.Text)
                            cmd.Parameters.AddWithValue("@PW", TextBox5.Text)

                            Dim file_path As String
                            file_path = OpenFileDialog1.FileName
                            Dim picture As Image = Image.FromFile(file_path)
                            Dim stream As New IO.MemoryStream
                            picture.Save(stream, Imaging.ImageFormat.Jpeg)

                            cmd.Parameters.AddWithValue("@img", stream.GetBuffer)


                            Sqlconn.Open()
                            cmd.ExecuteNonQuery()
                            Sqlconn.Close()
الجميل أنك تعرف أنه لابد من تحويل الصورة لمصفوفة عند الحفظ والعكس عند الاستعلام

يمكنك الاستفادة من هاتين الدالتين، دالة تحول الصورة لمصفوفة والثانية تحويل المصفوفة لصورة
PHP كود :
' تحويل الصورة إلى مصفوفة '
Function Image2Array(img As Image) As Array
 
   Using mStream As New IO.MemoryStream()
 
       img.Save(mStreamimg.RawFormat)
 
       Return mStream.ToArray()
 
   End Using
End 
Function 

PHP كود :
' تحويل المصفوفة إلى صورة  '
Function Array2Image(arr As Array) As Image
    Using mStream 
As New IO.MemoryStream(arr)
 
       Return Image.FromStream(mStream)
 
   End Using
End 
Function 

وبالنسبة للكود تبعك يكون استخدام الدالة كالتالي
PHP كود :
cmd.Parameters.AddWithValue("@img"Image2Array(picture)) 
مشكورررين جدا ويعطيكم الف عافية
ابدعتو والله
مشكور على المجهود الرائع