منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : كود التعديل والحذف ليسم صحيحين ولا اعلم ماهو الخطأ الذي اقترفته
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
هل هذا الكود صحيح ؟؟

كود :
Dim conn As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\Database1.accdb;Persist Security Info=False;")
       Dim sql As String =
           " update [Customer] set " &
           " ( Cus_Name, Cus_Address, Cus_Region, Cus_Telephone_Number ) " &
           " VALUES " &
           " ( @Cus_Name, @Cus_Address, @Cus_Region, @Cus_Telephone_Number ) " &
           " where " &
           " Cus_Private_Number " &
           " VALUES " &
           " @Cus_Private_Number "

       Dim cmd As New OleDbCommand(sql, conn)
       cmd.Parameters.AddWithValue("@Cus_Name", TextBox1.Text)
       cmd.Parameters.AddWithValue("@Cus_Private_Number", ComboBox1.Text)
       cmd.Parameters.AddWithValue("@Cus_Address", TextBox2.Text)
       cmd.Parameters.AddWithValue("@Cus_Region", TextBox3.Text)
       cmd.Parameters.AddWithValue("@Cus_Telephone_Number", TextBox4.Text)

       conn.Open()
       cmd.ExecuteNonQuery()
       conn.Close()

       MessageBox.Show("We have been successfully Update", "Congratulations", MessageBoxButtons.OK, MessageBoxIcon.Information)
   End Sub


لماذا يظهر لي رسالة ان الكود غير صحيح ؟؟

واذا تكرمتم تعطوني نفس الكود للحذف جزاكم الله خير
كود التعديل غريب ... وكأنة كود Insert ... جرب هكذا
PHP كود :
Dim sql As String =
 
           " update [Customer] set " &
 
           " Cus_Name=@Cus_Name, Cus_Address=@Cus_Address, Cus_Region=@Cus_Region, Cus_Telephone_Number =@Cus_Telephone_Number" &
 
           " where " &
 
           " Cus_Private_Number " &
 
           " = " &
 
           " @Cus_Private_Number " 
للاسف لم يقم بالتعديل ولكن تظهر الرسالة بانه تمت العملية بالنجاح وعندما تاكدت في القاعدة البيانات لم يقم بتعديل شيء ارجو المساعدة

كود :
Dim conn As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\Database1.accdb;Persist Security Info=False;")
       Dim sql As String =
           " update [Customer] set " &
           " Cus_Name=@Cus_Name, Cus_Address=@Cus_Address, Cus_Region=@Cus_Region, Cus_Telephone_Number =@Cus_Telephone_Number" &
           " where " &
           " Cus_Private_Number " &
           " = " &
           " @Cus_Private_Number "

       Dim cmd As New OleDbCommand(sql, conn)
       cmd.Parameters.AddWithValue("@Cus_Name", TextBox1.Text)
       cmd.Parameters.AddWithValue("@Cus_Private_Number", ComboBox1.Text)
       cmd.Parameters.AddWithValue("@Cus_Address", TextBox2.Text)
       cmd.Parameters.AddWithValue("@Cus_Region", TextBox3.Text)
       cmd.Parameters.AddWithValue("@Cus_Telephone_Number", TextBox4.Text)

       conn.Open()
       cmd.ExecuteNonQuery()
       conn.Close()

       MessageBox.Show("We have been successfully Update", "Congratulations", MessageBoxButtons.OK, MessageBoxIcon.Information)
   End Sub
تأكد من قيمه @Cus_Private_Number انها صحيحه

....
حاول حذف
هذا
" where " &
" Cus_Private_Number " &
" = " &
" @Cus_Private_Number "

وانظر هل ستتغيل كل الحقول ؟ ام لا ؟
تم وبحمدالله التعديل اما بالنسبة للحذف هل فقط اضيف كلمة Delete ??
مشكور اخوي على ردك السريع ولكن لم يعمل

Dim conn As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\Database1.accdb;Persist Security Info=False;")
Dim cmd As New OleDbCommand("Delete From Customer Where Cus_Private_Number=@Cus_Private_Number", conn)
conn.Open()
cmd.Parameters.AddWithValue("@Cus_Name", TextBox1.Text)
cmd.Parameters.AddWithValue("@Cus_Private_Number", ComboBox1.Text)
cmd.Parameters.AddWithValue("@Cus_Address", TextBox2.Text)
cmd.Parameters.AddWithValue("@Cus_Region", TextBox3.Text)
cmd.Parameters.AddWithValue("@Cus_Telephone_Number", TextBox4.Text)
cmd.ExecuteNonQuery()
conn.Close()

MessageBox.Show("We have been successfully Delete", "Congratulations", MessageBoxButtons.OK, MessageBoxIcon.Information)
هذه طريقة الحذف اخي الكريم

PHP كود :
Dim conn As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\Database1.accdb;Persist Security Info=False;")
Dim cmd As New OleDbCommand("Delete From Customer Where Cus_Private_Number=@Cus_Private_Number"conn)


cmd.Parameters.AddWithValue("@Cus_Private_Number"ComboBox1.Text)
conn.Open()
cmd.ExecuteNonQuery()
conn.Close()

MessageBox.Show("We have been successfully Delete""Congratulations"MessageBoxButtons.OKMessageBoxIcon.Information
تمت المهمة بنجاح