تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
أين الخطأ في طريقة عرض الصورة من قاعدة البيانات sql ؟
#19
[COLOR="#0000FF"]طبعاً شاشة البرنامج : تكست بوكس 1 يحمل رقم الصورة ، اداة بكشر لعرض الصورة ، زر حفظ ، زر عرض
[/COLOR]

[COLOR="#800080"]الجدول اسمه tp1 الحقول ID int , img image
[/COLOR]
الداتا بيز تنشئيها على السيرفر أو اتاتش .
كود الاتصال على السيرفر :

كود :
Dim con1 As New SqlConnection("Data Source=.\SQLEXPRESS;Initial Catalog=Database1;Integrated Security=SSPI;")
كود الاتصال أتاتش :

كود :
Dim con1 As New SqlConnection("Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|Database1.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True;Context Connection=False")

[COLOR="#0000FF"]البروسيجر للإضافة يكون كالتالي :
[/COLOR]
كود :
[color=#FF0000]Create [/color]procedure add_imagenew
(@ID int,@img image)
AS
insert into tp1 (ID,img)
values (@ID, @img)
RETURN
مع ملاحظه لو البروسيجر موجود مسبقاً يجب تغيير اللي باللون الأحمر إلى (Alter) اي تعديل وليس انشاء جديد لأنه لا يقبل انشاءه وهو موجود اصلاً


[COLOR="#0000FF"]زر فتح الصورة وعرضها في الأداة :
[/COLOR]
كود :
''كود فلترة الملفات التى يمكن تحميلها وهى هنا صور فقط
        OpenFileDialog1.Filter = "JPEG files (*.jpeg)|*.jpg|JPG files (*.jpg)|*.jpg|BITMAP files (*.bmp)|*.bmp|GIF files (*.gif)|*.gif"
        ''كود فتح أداة إختيار الملفات
        OpenFileDialog1.ShowDialog()
        PictureBox1.Image = Image.FromFile(OpenFileDialog1.FileName)
[COLOR="#0000FF"]زر الحفظ يكون كالتالي :
[/COLOR]
كود :
con1.Open()
        Dim cmd_add As New SqlCommand("add_imagenew", con1)
        cmd_add.CommandType = CommandType.StoredProcedure

        cmd_add.Parameters.AddWithValue("@ID", TextBox1.Text)
        cmd_add.Parameters.Add("@img", SqlDbType.Image).Value = DBNull.Value

        Dim ms As New System.IO.MemoryStream
        PictureBox1.Image.Save(ms, PictureBox1.Image.RawFormat)
        Dim rawdata() As Byte = ms.GetBuffer

        cmd_add.Parameters.Clear()

        cmd_add.Parameters.AddWithValue("@id", TextBox1.Text)
        cmd_add.Parameters.AddWithValue("@img", rawdata)

        cmd_add.ExecuteNonQuery()
        con1.Close()

        MessageBox.Show("تم الحفظ بنجاح")

[COLOR="#0000FF"]بروسيجر عرض الصورة يكون كالتالي :
[/COLOR]
كود :
[color=#FF0000]Create [/color]PROCEDURE showdata
    (
     @ID int ,
    @img image
     )
AS
    select * from tp1 where ID = @ID

RETURN
مع ملاحظه لو البروسيجر موجود مسبقاً يجب تغيير اللي باللون الأحمر إلى (Alter) اي تعديل وليس انشاء جديد لأنه لا يقبل انشاءه وهو موجود اصلاً


[COLOR="#0000FF"]كود عرض الصورة كالتالي :
[/COLOR]
كود :
Dim cmd_add As New SqlCommand("showdata", con1)
        cmd_add.CommandType = CommandType.StoredProcedure

        cmd_add.Parameters.AddWithValue("@id", TextBox1.Text)
        cmd_add.Parameters.Add("@img", SqlDbType.Image).Value = DBNull.Value

        con1.Open()

        Dim dr As SqlDataReader = cmd_add.ExecuteReader
        If dr.Read = True Then

            TextBox1.Text = dr!ID

            Dim byimg() As Byte = dr!img
            Dim stimg As New System.IO.MemoryStream(byimg)
            PictureBox1.Image = Image.FromStream(stimg)

        Else
            MsgBox("السجل غير موجود")

        End If
        dr.Close()
        cmd_add.Dispose()
        con1.Close()
الرد }}}
تم الشكر بواسطة:


الردود في هذا الموضوع
أين الخطأ في طريقة عرض الصورة من قاعدة البيانات sql ؟ - بواسطة حريف برمجة_mybb_import7120 - 20-04-13, 01:45 PM


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


يقوم بقرائة الموضوع: