الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

رجاء المساعده بكودي ال Update , Delete

مغلق
بدأه zawawe في 6 مايو 2006 · 9 رد · 792 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم اخوتي الاعزاء

قبل اي شئ اؤكد لكم اني منذ ثلاثة ايام احاول وابحث في منتدانا ولم اصل للحل الصحيح لهذه الاكواد

كود ال update

بعد البحث الكثير توصلت الى هذا الكود ولكنه ينفذ داخل الداتاجريد فقط اما للداتا بيس فلا يغير اي شيئ فارجو اكتشاف الخطأ فيه وليت يقوم احد الاخوه بشرح المنطق الذي يتبعه الكود

 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
 Dim con As New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=tes.mdb;Persist Security Info=False")
        con.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=tes.mdb;Persist Security Info=False"
        Dim sql, br As String
        sql = "UPDATE    hossam  SET    hossam.eng = '" & TextBox2.Text & "', hossam.ara = '" & TextBox1.Text & "' WHERE     (hossam.[id] ='" & TextBox3.Text & "')"
        br = "select * from hossam "
        Try

            Dim da As New OleDb.OleDbDataAdapter(sql, con)
            Dim da1 As New OleDb.OleDbDataAdapter(sql, con)
            Dim ds, ds1 As New DataSet
            da.Fill(ds, "hossam")

            da1.Update(ds1, "hossam")
         
            da1.Fill(ds, "hossam")
            'ds1.Merge(ds)

        Catch e1 As OleDb.OleDbException

        End Try
End Sub

واما كود ال حذف فهو لايقوم بالحذف وهو كالتالي

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click

        Dim con As New OleDb.OleDbConnection()
        con.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=tes.mdb;Persist Security Info=False"
        
        Dim sql, sql1 As String
        sql = "delete eng,ara from hossam  where hossam.id='" & TextBox3.Text & "'"
        sql1 = "select * from hossam where hossam.id='" & TextBox3.Text & "'-1"
      
        Try
            Dim da As New OleDb.OleDbDataAdapter()
            Dim da1 As New OleDb.OleDbDataAdapter(sql1,con)
            Dim ds As New DataSet         
            If MessageBox.Show("هل انت متأكد من انه السجل المطلوب حذفه ؟", "تأكيد", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1, MessageBoxOptions.RtlReading, False) = Windows.Forms.DialogResult.Yes Then
                da.DeleteCommand = New OleDb.OleDbCommand("delete eng,ara from hossam  where hossam.id='" & TextBox3.Text & "'", con)
                con.Open()
                da.DeleteCommand.ExecuteNonQuery()
                ds.Clear()

                da1.Fill(ds, "hossam")
                con.Close()
            End If           
        Catch e1 As OleDb.OleDbException

        End Try

    End Sub

بارك الله لكم وفي علمكم

مع العلم ان الداتا بيز تحتوي على جدولين احدهما غير مستخدم في هذا الفورم مما يجعلني اعتبره جدول واحد به ثلاث اعمده id,eng,ara وعمود ال id هو البريمري كي وترقيم تلقائي وهي اكسس داتا بيس وجميع الاكواد برمجيا وليست بال wizard

#2

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

اخي الرجاء التوضيح في طلبك

وهل الكود السابق للتحديث لا يقوم بالتعديل على قاعدة البيانات الاساسية

في الكود السابق لم يتم فتح قاعدة البيانات للتعامل معها

con.open

Dim strcon As string
strcon="Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=tes.mdb;Persist Security Info=False"
Dim con As New oledbconnection(strcon)
con.open()
Dim cmd As new oledbcommand
cmd.commandtext="UPDATE    hossam  SET    hossam.eng = '" & TextBox2.Text & "', hossam.ara = '" & TextBox1.Text & "' WHERE     hossam.[id] ='" & TextBox3.Text & "'"
cmd.connection=con
cmd.executenonquery()
con.close
msgbox("تم التعديل")

هذا الكود للاضافة في القاعدة دون العرض في الداتا جريد ويمكنك كتابة الاكواد اللازمة للعرض

#3

اما بخصوص امر الحذف

Dim strcon As string
strcon="Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=tes.mdb;Persist Security Info=False"
Dim con As New oledbconnection(strcon)
con.open()
Dim cmd As new oledbcommand
cmd.commandtext="delete * from hossam where hossam.id='" & TextBox3.Text & "'"
cmd.connection=con
cmd.executenonquery()
con.close
msgbox("تم الحذف")

وإن شاء الله تفيدك هذي الاكواد بس بسيط

وشكرا

#4

السلام عليكم

بارك الله فيك اخي العزيز وزادك من العلم النافع

اخي العزيز الكودين اعطوني نفس الخطأ وهو كالتالي

اقتباس
Data type mismatch in criteria expression.

عند الخطوه

  cmd.executenonquery()

مع العلم ان النسخه التي اعمل عليها هي vb 2005

وشكرا مره اخرى لك اخي العزيز

#5

مرحبا اخي العزيز

عندما يقوم البرنامج باظهار خطأ عند

executenonquery

يعني ذلك انه هناك خطأ في البيانات المدخلة من حيث نوع بياناتها

او هناك خطأ في جملة SQL وهي التحديث

قم بإرفاق البرنامج وسوف احاول في حل المطلوب

وسأحاول بكتابت برنامج صغير مشابه له

وشكرا

#6

هذا برنامج بسيط شبيه بما تريده من ناحية الاكواد

برنامج اضافة وتعديل وحذف الكتب

WindowsApplication1.zip

#7

وإذا لم تستفد منه اخي

قم بإدراج برنامج وسوف احاول اخبارك الاخطاء الموجودة فيه إذا استطعت

واي خدمة

#8

للمعلومية اخي

في البرنامج المرفق

يتم التعديل والحذف من خلال رقم الكتاب يعني اذا تبغى تحذف كتاب معين اكتب رقمه واضغط على زر الحذف وسيقوم بحذف السجل كامل

وزي كده زر التعديل

اما اذا بدك تحذف او تعدل من خلال اسم الكتاب قم بتغير جملة SQL كتالي

للتعديل

cmd.CommandText = "update books set book_id=" & T1.Text & ",book_name='" & T2.Text & "',auth_name='" & T3.Text & "',pub_name='" & T4.Text & "' where book_name='" & T2.Text & "'"

للحذف

cmd.CommandText = "delete * from books where book_name='" & T2.Text & "'"

[code/]

#9

اخي العزيز

بارك الله لك في صحتك ومالك وولدك وعلمك

لقد حلت المشكله و(لعل يستفيد احد الاخوه من هذا الخطأ)كان الخطأ بجملة الاستعلام كالتالي

"UPDATE    hossam  SET   eng = '" & TextBox2.Text & "', ara = '" & TextBox1.Text & "' WHERE     hossam.[id] ='" & TextBox3.Text & "'"

وبما ان ال id هورقم و تلقائي الترقيم فلم يكن يجب وضع المعلمات ' ' لانها توضع لل string فقط فالكود الصحيح هو كذلك

"UPDATE    hossam  SET    eng = '" & TextBox2.Text & "', ara = '" & TextBox1.Text & "' WHERE     hossam.[id] =" & TextBox3.Text & ""

ومره اخري اشكرك اخي العزيز Mohammed_x وادعو الله لك بالتوفيق وان ينفعنا وينفعك بعلمك

#10

سلمت اخي والله يوفقك

والحمدلله ان المشكلة انحلت

وادعو الله ان يزيدك علما ونفعا

هذا الموضوع مغلق.

مواضيع مشابهة