تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] مشكلة عند تحزيم البرنامج
#2
(13-08-24, 11:40 PM)annagui كتب : السلام عليكم ورحمة الله وبركاته . اساتذتي الكرام  بفضل الله و عونكم اتممت مشروعي شغال 100%  لاكن عند التحزيم  ظهرت معي مشكلتين مع العلم اني اتعامل مع قاعدة بيانات من نوع (mdb) 
الاولى عند الظغط على زر تعديل البيانات تظهر معي هذه الرسالة : (operation must use an updateable query) 
وهذا كود التعديل 
كود :
زر التعديل
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
       Try

           conn.Open()
           Dim table As New DataTable("annagui")
           Dim rs As New OleDb.OleDbDataAdapter("update annagui SET nom ='" & TextBox2.Text & "',prenom ='" & TextBox3.Text & "',date_de_naissance ='" & DateTimePicker1.Value.ToString("dd/MM/yyyy") & "',lieu_de_naissance ='" & TextBox4.Text & "',sex ='" & ComboBox1.Text & "',numero_passport ='" & TextBox5.Text & "',date_validation ='" & DateTimePicker2.Value.ToString("dd/MM/yyyy") & "',date_expired ='" & DateTimePicker3.Value.ToString("dd/MM/yyyy") & "',age ='" & TextBox6.Text & "',cin ='" & ComboBox2.Text & "',numero_cin ='" & TextBox7.Text & "',autre_nationalite ='" & ComboBox3.Text & "',nom_pere ='" & TextBox8.Text & "',nom_grand_pere ='" & TextBox9.Text & "',nom_mere ='" & TextBox10.Text & "',prenom_mere ='" & TextBox11.Text & "',profession ='" & TextBox12.Text & "',qualite ='" & ComboBox4.Text & "',email ='" & TextBox13.Text & "',adresse_uae ='" & ComboBox5.Text & "',tel_uae ='" & TextBox14.Text & "',etat_civil ='" & ComboBox6.Text & "',nom_epou ='" & TextBox15.Text & "',prenom_epou ='" & TextBox16.Text & "',validation ='" & DateTimePicker4.Value.ToString("dd/MM/yyyy") & "',expired ='" & DateTimePicker5.Value.ToString("dd/MM/yyyy") & "',remarque ='" & TextBox17.Text & "',r_sex ='" & TextBox18.Text & "',r_etat ='" & TextBox19.Text & "' Where id=" & TextBox1.Text & ";  ", conn)
           rs.Fill(table)
           rs.Dispose()
           MsgBox("تم تحديث البيانات بنجاح   ", vbInformation, "تحديث")
           conn.Close()

           Form2.load_data()

       Catch ex As Exception
           MessageBox.Show(ex.Message)
       End Try

   End Sub

في الاستعلامات التي نقوم بها على الجداول نستخدم التعليمة Update لتحديث السجلات وهي ليست مخصصة للقراءة اي انها لا تعود بأي سجلات ExecuteNonQuery
على النقيض من اختها التعليمة Select فهي مخصصة للقراءة وتعود بسجلات ExecuteReader
و كبداية ارى ان الخطأ ربما يكون في السطرين التاليين (لانه لا حاجة لاستخدام DataTable
كود :
Dim table As New DataTable("annagui")
rs.Fill(table)
'اضافة سطر جديد لتنفيذ الاستعلام
rs.ExecuteNonQuery()
تخلص من هذين السطرين وانظر ماذا ترى

نصيحة : لا تستخدم التعليمة Try عند مرحلة تجريب الكود حتى تتمكن من تحديد مناطق الخطأ في الكود
الرد }}}
تم الشكر بواسطة:


الردود في هذا الموضوع
مشكلة عند تحزيم البرنامج - بواسطة annagui - 13-08-24, 11:40 PM
RE: مشكلة عند تحزيم البرنامج - بواسطة salamandal - 14-08-24, 01:08 AM


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


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