منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
مشكله في ادراج صورة لقاعدة بيانات سيكول - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : مشكله في ادراج صورة لقاعدة بيانات سيكول (/showthread.php?tid=30741)

الصفحات: 1 2


مشكله في ادراج صورة لقاعدة بيانات سيكول - makky - 06-08-19

عند ادراج صورة علي هيئة binary لقاعدة بيانات سيكول.يحدث مشكله ويعطي timeout في حالة ان كان حجم الصورة اكثر من 12 كيلوبايت علي الرغم من اني استخدم حجم حقل
varbinary(max)


RE: مشكله في ادراج صورة لقاعدة بيانات سيكول - Beginer - 06-08-19

ضع image بدلا من (varbinary(max


RE: مشكله في ادراج صورة لقاعدة بيانات سيكول - makky - 06-08-19

للاسف نفس المشكلة مع تغغير الحقل ال image


RE: مشكله في ادراج صورة لقاعدة بيانات سيكول - سعود - 06-08-19

timeout
هذه ليست لها علاقة بموضوع نوع الحقل.
هذي تخص موضوع محدودية الذاكرة.
جرب احد الامثلة بالمنتدى فان عمل بلا مشاكل فهذا يعني طريقة التخزين فيها خطأ وان ظهرت نفس رسالة الخطا فراجع خيارات الذاكرة للجهاز.


RE: مشكله في ادراج صورة لقاعدة بيانات سيكول - Beginer - 07-08-19

إذا كان نوع حقل الصورة image ولم تستطيع حفظ الصورة، فلديك خطأ في تكوين الكود.


RE: مشكله في ادراج صورة لقاعدة بيانات سيكول - Saad Alward - 07-08-19

ضع نوع الحقل الى Image

هذا كود لعملية الادخال او التحديث اذا كانت الصوره في PictureBox

كود :
                   Dim CMD As SqlCommand
                   CMD = New SqlCommand("update T_NAMES set c_names_image=@c_names_image where c_names_id='" & NAMES_id_code.Trim & "'", SQLCLIENTCN)
                   CMD.Parameters.Add(New SqlClient.SqlParameter("@c_names_image", SqlDbType.Image)).Value = imgToByteConverter(PictureBox1.Image)
                   CMD.ExecuteNonQuery()
                   CMD.Dispose()

وهذا الكود لتحويل الصوره من image الى Byte

كود :
'convert image to bytearray
   Public Function imgToByteConverter(ByVal inImg As Image) As Byte()
       Dim imgCon As New ImageConverter()
       Return DirectCast(imgCon.ConvertTo(inImg, GetType(Byte())), Byte())
   End Function

وهذا الكود لتحويل من bytearray الى image


كود :
'convert bytearray to image
   Public Function byteArrayToImage(ByVal byteArrayIn As Byte()) As Image
       Using mStream As New MemoryStream(byteArrayIn)
           Return New Bitmap(Image.FromStream(mStream))
       End Using
   End Function



RE: مشكله في ادراج صورة لقاعدة بيانات سيكول - makky - 07-08-19

نفس المشكلة للاسف


RE: مشكله في ادراج صورة لقاعدة بيانات سيكول - Beginer - 07-08-19

إذا كان نوع حقل الصورة image واستمرت المشكلة، فهذا يعني أن لديك خطأ في تكوين الكود.


RE: مشكله في ادراج صورة لقاعدة بيانات سيكول - makky - 07-08-19

PHP كود :
Try
           
            
Dim ms As New MemoryStream
            Dim arrimage
() As Byte = {0}
            If (
Pic.Image IsNot NothingThen
                Pic
.Image.Save(msPic.Image.RawFormat)
                
arrimage ms.GetBuffer
                ms
.Close()
            
End If
            
Dim strsql As String
            Dim acscmd 
As New SqlCommand
            
'   Dim con As New SqlConnection

            Dim con As New SqlConnection
            If IO.File.Exists(Application.StartupPath & "\DATABASE\bak2019.mdf") Then
                If My.Settings.constr = "" Then
                    con = New SqlConnection(("Data source=.\SQLEXPRESS;AttachDbFilename= " & Application.StartupPath & "\DATABASE\bak2019.mdf;Integrated Security=True;User Instance=True"))

                Else
                    If IO.File.Exists(My.Settings.constr) Then
                        con = New SqlConnection(("Data source=.\SQLEXPRESS;AttachDbFilename= " & Application.StartupPath & "\DATABASE\bak2019.mdf;Integrated Security=True;User Instance=True"))

                    Else
                        If MessageBox.Show("هل تريد تحديد مسار قاعدة البيانات", "خطأ قاعدة البيانات غير موجودة", MessageBoxButtons.YesNo, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1, MessageBoxOptions.RightAlign) = DialogResult.Yes Then

                            Database.Show()
                        Else
                            MessageBox.Show("سيتم استخدام قاعدة البيانات الحالية ", "تنويه", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1, MessageBoxOptions.RightAlign)
                            con = New SqlConnection(("Data source=.\SQLEXPRESS;AttachDbFilename= " & Application.StartupPath & "\DATABASE\bak2019.mdf;Integrated Security=True;User Instance=True"))

                        End If
                    End If


                End If

            Else
                MessageBox.Show("قاعدة البيانات غير موجودة", "خطأ", MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1, MessageBoxOptions.RightAlign)
                '  
Exit Function
            
End If
           
            
strsql "update labdetails set itmnme=@itmnme,itmspecial=@itmspecial,itmadress=@itmadress,itmphone=@itmphone,itmtime=@itmtime,itmlogo=@itmlogo,itmprint=@itmprint,itmnameenglish=@itmnameenglish,itmspecialenglish=@itmspecialenglish,signature1=@signature1,signature2=@signature2"

             
acscmd.CommandText strsql
            acscmd
.Connection con
            con
.Open()

            
acscmd.Parameters.AddWithValue("@itmnme"txtitmname.Text)
            
acscmd.Parameters.AddWithValue("@itmspecial"txtspeciality.Text)
            
acscmd.Parameters.AddWithValue("@itmadress"txtadress.Text)
            
acscmd.Parameters.AddWithValue("@itmphone"txtphone.Text)
            
acscmd.Parameters.AddWithValue("@itmtime"txttime.Text)
            
acscmd.Parameters.AddWithValue("@itmlogo"IIf(Pic.Image IsNot NothingarrimageDBNull.Value))
            
            
acscmd.Parameters.AddWithValue("@itmprint"printchck.Checked)
            
acscmd.Parameters.AddWithValue("@itmnameenglish"Txtitm.Text)
            
acscmd.Parameters.AddWithValue("@itmspecialenglish"txtspecial.Text)
            
acscmd.Parameters.AddWithValue("@signature1"txtsign1.Text)
            
acscmd.Parameters.AddWithValue("@signature2"txtsign2.Text)
          

            
acscmd.ExecuteNonQuery()
            
acscmd.Dispose()
            
con.Close()
            
con.Dispose()
            
Me.Close()
           

        Catch 
ex As Exception
            MsgBox
(ex.Message)
        
End Try 



RE: مشكله في ادراج صورة لقاعدة بيانات سيكول - kiki - 07-08-19

قم باستخدام هذا المشروع
http://vb4arb.com/vb/showthread.php?tid=28906