تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
مشكلة فى اضافة صور داخل قاعدة البيانات
#1
السلام عليكم شباب
حاولت اكتر من مره اضافة صور فى قاعدة البيانات ولا لكن فشلت و الحمد الله
عملت الكود ده بس مش عارف الغلاط فين ده الكود
كود :
con.Open()
Dim da As New System.Data.SqlClient.SqlDataAdapter("select * from Table3", con)
Dim ds As New DataSet
Dim cm As New System.Data.SqlClient.SqlCommandBuilder(da)
da.Fill(ds, "Table3").ToString()
Dim dr As DataRow = ds.Tables("Table3").NewRow
Dim ms As New System.IO.MemoryStream
PictureBox1.Image.Save(ms, PictureBox1.Image.RawFormat)
Dim rawdata() As Byte = ms.GetBuffer
dr.Item("img") = rawdata
ds.Tables("Table3").Rows.Add(dr)
da.Update(ds, "Table3")
con.Close()
MsgBox("Saved!")

طبعا نوع الحقل mage
و قاعدة البيانات على موقع somee
ما الحل :confused::confused:
يَامَعْشَرَ الْجِنِّ وَالإِنسِ إِنْ اسْتَطَعْتُمْ أَنْ تَنفُذُوا مِنْ أَقْطَارِ السَّمَاوَاتِ وَالأَرْضِ فَانفُذُوا لا تَنفُذُونَ إِلاّ بِسُلْطَانٍ(33) سورة الرحمن
الرد }}}}
تم الشكر بواسطة:
#2

السلام عليكم ورحمة الله وبركاته







PHP كود :
Private Sub Button1_Click(ByVal sender As System.ObjectByVal e As System.EventArgsHandles Button1.Click

        Dim sql 
As String " INSERT INTO [Table3] ( [img] ) VALUES ( @img ) "

        
Dim com As New SqlClient.SqlCommand(sqlcon)
        
com.Parameters.AddWithValue("@img"ImageToByte(Me.PictureBox1.Image))

        
con.Open()
        
com.ExecuteNonQuery()
        
con.Close()

        
MsgBox("تمت الإضافة بنجاح")

    
End Sub


#Region " ImageToByte "
    
Public Function ImageToByte(ByVal image As Image) As Object
        Dim imgByte 
As Byte() = Nothing
        Dim imgStream 
As New IO.MemoryStream()
        
On Error Resume Next
        image
.Save(imgStreamImaging.ImageFormat.Png)
        Return 
imgStream.ToArray()
    
End Function
#End Region 





السلام عليكم ورحمة الله وبركاته
الرد }}}}
تم الشكر بواسطة:
#3
السلام عليكم اخى عملت الكود بالطريقة دى
كود :
#Region " ImageToByte "
    Public Function ImageToByte(ByVal image As Image) As Object
        Dim imgByte As Byte() = Nothing
        Dim imgStream As New IO.MemoryStream()
        On Error Resume Next
        image.Save(imgStream, Imaging.ImageFormat.Png)
        Return imgStream.ToArray()
    End Function
#End Region

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Dim con As New SqlConnection("Data Source=elsenbisi.mssql.somee.com;User ID=sbisy;Password=0000000000")
        Dim sql As String = " INSERT INTO [Table4] ( [img] ) VALUES ( @img ) "

        Dim com As New SqlClient.SqlCommand(sql, con)
        com.Parameters.AddWithValue("@img", ImageToByte(Me.PictureBox1.Image))

        con.Open()
        com.ExecuteNonQuery()
        con.Close()

        MsgBox("تمت الإضافة بنجاح")
    End Sub
و ظهر عندى المشكلة دى
[ATTACH=CONFIG]3030[/ATTACH][ATTACH=CONFIG]3031[/ATTACH]


الملفات المرفقة صورة/صور
       
يَامَعْشَرَ الْجِنِّ وَالإِنسِ إِنْ اسْتَطَعْتُمْ أَنْ تَنفُذُوا مِنْ أَقْطَارِ السَّمَاوَاتِ وَالأَرْضِ فَانفُذُوا لا تَنفُذُونَ إِلاّ بِسُلْطَانٍ(33) سورة الرحمن
الرد }}}}
تم الشكر بواسطة:
#4

السلام عليكم ورحمة الله وبركاته




الكود التالي عمل لدي بنجاح.
يبدو أنك تقوم بحفظ صورة بحجم كبير مما يتسبب بانتهاء المهلة الزمنية على النت قبل اتمام العملية.
إستعلمت عن سجل به صورة مصباح أضفتها أنا وتمت بنجاح لأن حجم الصورة صغير.
أفرغ قاعدة البيانات وتعامل مع الصورة الصغيرة فقط

ملاحظة هامة: التعامل مع قاعدة البيانات على الجهازأو الشبكة الداخلية يختلف عن التعامل مع قاعدة بيانات على النت، فالوقت الممنوح لك لاتمام عملية ما يحكمك، ولكن عند التعامل مع قاعدة بيانات على النت ولكن بواسطة كود في الموقع نفسه فلا مشكلة.


PHP كود :
Imports System.Data.SqlClient

Public Class Form1

    
Private con As New SqlClient.SqlConnection(" Data Source = elsenbisi.mssql.somee.com; User ID = sbisy; Password = 0000000000; ")

#Region " ImageToByte "
    
Public Function ImageToByte(ByVal image As Image) As Object
        Dim imgByte 
As Byte() = Nothing
        Dim imgStream 
As New IO.MemoryStream()
        
On Error Resume Next
        image
.Save(imgStreamImaging.ImageFormat.Png)
        Return 
imgStream.ToArray()
    
End Function
#End Region
#Region " ByteToImage "
    
Public Function ByteToImage(ByVal rowItem As Object) As Image
        On Error Resume Next
        
Return Image.FromStream(New IO.MemoryStream(DirectCast(CObj(rowItem), Byte())))
    
End Function
#End Region


    
Private Sub Button2_Click(ByVal sender As System.ObjectByVal e As System.EventArgsHandles Button2.Click

        Dim sql 
As String " INSERT INTO [Table4] ( [img] ) VALUES ( @img ) "

        
Dim com As New SqlClient.SqlCommand(sqlcon)
        
com.Parameters.AddWithValue("@img"ImageToByte(Me.PictureBox1.Image))

        
con.Open()
        
com.ExecuteNonQuery()
        
con.Close()

        
MsgBox("تمت الإضافة بنجاح")
    
End Sub

    
Private Sub Button3_Click(ByVal sender As System.ObjectByVal e As System.EventArgsHandles Button3.Click
        Me
.PictureBox1.Image Nothing

        Dim sql 
As String " SELECT *         " _
                            
"   FROM [Table4]  " _
                            
"  WHERE [ID] = 4   "

        
Dim com As New SqlClient.SqlCommand(sqlcon)

        
Dim dt As New DataTable
        Dim da 
As New SqlClient.SqlDataAdapter(com)

        If 
da.Fill(dt) > 0 Then

            Me
.PictureBox1.Image ByteToImage(dt.Rows(0).Item("img"))

        
End If

    
End Sub
End 
Class 





السلام عليكم ورحمة الله وبركاته
الرد }}}}
تم الشكر بواسطة:
#5
السلام عليكم

انظر الى هذا الموضوع http://vb4arb.com/vb/showthread.php?3954...7%E4%C7%CA
الرد }}}}
تم الشكر بواسطة:
#6
احيانا استغرب صعوبة تنفيذ امر عند عضو مع انه سهل بالنسبة لي مثلا واحيانا اخرى استغرب عدم تمكني من حل مشكلة او تنفيذ كود في حين ان الاغلبية هنا ذكروا الحلول ...فاقول تفسيرا لها ان اختلاف النسخ(الموديل vb 2005-2008-2010-2012) قد يكون سبب في ذلك.
السهل الذي وجدته وعملت له مثال اضافة الصور للقاعدة وعرضها ..لكن كما قلت قد لا يناسب نسخة احدث او اقدم والله تعالى اعلم.
كل مااعرفه في البرمجة تجدونه هنا
الرد }}}}
تم الشكر بواسطة:
#7
الاستاذ sajad لي مشاركة بخصوص تقارير rdlc برجاء حل مشكلتي
الرد }}}}
تم الشكر بواسطة:
#8
شكر ليك اخى أبورائد
بس هل يوجد طريق تعديل الكود علشان اصغر الصور قبل بعد الوضع ادخل قاعد البيانات
بطريق اوضح شوية اخى
دلوقتى انا مش عرف المستخدم هعمل اضافة صور الحجم بتعها كبير ولا صغير بس فى طريق بعد ما يحدد مكان الصور اصغر الحجم ده قبل ما يتم عملت الحفقظ فى قاعدة البيانات مع الحفاظ على نقة الصور
يَامَعْشَرَ الْجِنِّ وَالإِنسِ إِنْ اسْتَطَعْتُمْ أَنْ تَنفُذُوا مِنْ أَقْطَارِ السَّمَاوَاتِ وَالأَرْضِ فَانفُذُوا لا تَنفُذُونَ إِلاّ بِسُلْطَانٍ(33) سورة الرحمن
الرد }}}}
تم الشكر بواسطة:
#9
اظن دقة الصورة تتناسب طرديا مع الحجم اي كلما زادت الدقة زاد الحجم ...ان كان ماقلته خطا فارجو الايضاح.
كل مااعرفه في البرمجة تجدونه هنا
الرد }}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سؤال] مشكلة الاختلاف بين ترتيب الصفوف في قاعدة البيانات والداتا جريد فيو waelalmsry75 2 103 18-08-17, 05:40 PM
آخر رد: waelalmsry75
  هل يمكن حفظ البيانات من dataGridView مباشرة؟ abozeyd 3 137 15-08-17, 02:11 PM
آخر رد: abozeyd
  ممكن تعديل كود انشاء قاعدة اكسس بالكود سعود 8 239 07-08-17, 11:26 PM
آخر رد: أبو نوره
  طلب كود رسالة تبين أن هذه البيانات موجودة من قبل ولا يسمح بتكررها waelalmsry75 2 140 19-07-17, 03:24 PM
آخر رد: waelalmsry75
  تضمين قاعدة بيانات MySQL مع الرنامج Jounior_P 8 239 19-07-17, 01:58 PM
آخر رد: Jounior_P
  مشكلة في كود البحث Search khaled12345 5 213 16-07-17, 08:22 PM
آخر رد: سعود
  مشكلة في الاتصال مع ملفات ال SQL الخارجية .mdf khaled12345 13 420 16-07-17, 06:21 AM
آخر رد: ahmed6610
Question [سؤال] كيف يتم تشغيل قاعدة بيانات SQL SERVER دون تنصيب MS SQL SERVER alimoi79 1 162 16-07-17, 02:56 AM
آخر رد: ابو ليلى
  مشكلة في كود الحذف Delete khaled12345 5 171 15-07-17, 10:58 PM
آخر رد: أبوبكر سويدان
  [سؤال] مشكلة في كود الاضافة والتعديل في المشروع khaled12345 11 356 15-07-17, 02:17 AM
آخر رد: سعود

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم