تقييم الموضوع :
  • 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
اظن دقة الصورة تتناسب طرديا مع الحجم اي كلما زادت الدقة زاد الحجم ...ان كان ماقلته خطا فارجو الايضاح.
الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  مشكلة فى الجريد فيو salah525 10 540 05-11-23, 08:15 PM
آخر رد: justforit
Big Grin مشكلة لسه ماحدش جاوبني عليها cmd.excutenunquery Medo84 1 1,304 27-08-23, 12:47 PM
آخر رد: رضوان الجماعي
  مشكلة عند الاتصال ب sql server 2014 bassant 1 1,004 27-08-23, 12:26 PM
آخر رد: رضوان الجماعي
  [سؤال] عدم إظهار الصور مع النص فى Listview من قاعدة البيانات alims 2 1,581 27-08-23, 12:22 PM
آخر رد: رضوان الجماعي
  *[- تم الحل -]* ما هو كود اضافة ميزة المفتاح الاساسي لعمود ترقيم تلقائي موجود سعود 2 498 27-05-23, 01:44 AM
آخر رد: سعود
  [نقاش] مشاركة قاعدة بيانات SQL على شبكه داخليه morkoskhalaf 3 3,009 06-01-23, 03:20 AM
آخر رد: عبدالكريم برشدان
  قاعدة بيانات xml djelloul 3 2,799 07-11-22, 10:27 PM
آخر رد: Am7
  استفسار عن تخزين الوقت في قاعدة البيانات strongriseman 2 1,126 22-04-22, 07:27 PM
آخر رد: strongriseman
  [سؤال] مشكلة فى عرض الصورة من ادخل قاعدة البيانات alims 2 1,264 17-11-21, 10:09 AM
آخر رد: سعود
  استعلام يرجع اسماء الاعمدة و نوع البيانات في جدول معين بسام محمدغانم 0 964 23-10-21, 01:43 AM
آخر رد: بسام محمدغانم

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


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