اخواني الكرام
ما سبب هذا الخطأ
Data type mismatch in criteria expression.
تم إضافة الصورة المكبرة للموضوع من قبل الإدارة . بالتوفيق
السلام عليكم
تم نقل الموضوع الى قسم اسئلة وبرمجة قواعد البيانات في بيئة ال.NET
اخي العزيز ضع أمر التعديل كاملة ,فهذه الرسالة مفادها انه هنالك خطأ في جملة الUpdate
هذا هو امر التعديل اخي الكريم سجاد
كود :
Dim SavInto As New OleDb.OleDbCommand
Dim adapter2 As New OleDbDataAdapter(SQLstr, Conn)
SavInto.Connection = Conn
SavInto.CommandType = CommandType.Text
SavInto.CommandText = "UPDATE TheTable SET Mall = '" & Trim(TextBox3.Text) & "' , Expiry_date_repairs = '" & Trim(TextBox4.Text) & "' , Repair_Cost= '" & Trim(TextBox5.Text) & "' , Description_repairs= '" & Trim(TextBox6.Text) & "'WHERE Code ='" & m & "' and ID='" & m2 & "'"
Conn.Open()
SavInto.ExecuteNonQuery()
Conn.Close()
Button4.Enabled = False
Button5.Enabled = False
Button3.Enabled = True
TextBox2.ReadOnly = True
TextBox3.ReadOnly = True
TextBox4.ReadOnly = True
TextBox5.ReadOnly = True
TextBox6.ReadOnly = True
End Sub
Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
Button4.Enabled = False
Button5.Enabled = False
Button3.Enabled = True
TextBox2.ReadOnly = False
TextBox3.ReadOnly = False
TextBox4.ReadOnly = True
TextBox5.ReadOnly = True
TextBox6.ReadOnly = True
End Sub
[b]عدل الجملة الى الاتي:
PHP كود :
SavInto.CommandText = "UPDATE TheTable SET Mall = '" & Trim(TextBox3.Text) & "' , Expiry_date_repairs = '" & Trim(TextBox4.Text) & "' , Repair_Cost= '" & Trim(TextBox5.Text) & "' , Description_repairs= '" & Trim(TextBox6.Text) & "'WHERE Code =" & m & " and ID=" & m2 & '"
اعتقد ان الCode والID ليسا من نوع string لذا لا يجب وضعهما بين (') single qoutation[/b]
اخي ساجد بعد التعديل حدث الخطأ التالي
[ATTACH=CONFIG]3216[/ATTACH]
Syntax error in string in query expression 'Code ='0 and ID='.
تم تعريف المتغيرات m و m2
بالشكل التالي
Dim m As Integer
Dim m2 As String
اخي العزيز
ما نوع حقل الID والCode في قاعدة البيانات؟
ان كان string فضع الM والm2 بين (') وإن كان int فلا يجوز وضع الm والm2 او أي حقل رقمي بين علامتي '
اخي الكريم بالنسبه ل code فهو من نوع text
واما ID فهو من نوع AutoNmber
اذا يا اخي العزيز لماذا وضعت الID في التعديل؟ لا يجوز لانه ترقيم تلقائي ويجب مسحه من جملة التعديل
اما بالنسب للكود فضع المتغير m بين علامتي تنصيص مفردة وتحل المشكلة ان شاءالله
اخى الكريم عدما الغى Id واعمل بحث عن طريق code واقوم بعمليه التعديل يقوم البرنامج بتعديل كل السجلات التي تحمل نفس الاسم لانه في البرنامج عندي يسمح بتكرر الكود لاكثر من سجل
فانا اريد ان اعمل تعديل على سجل واحد محدد
اتمنى المساعده
اتمنى المساعده اخي الكريم سجاد