تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
عندى مشكلة واريد حلها
#1
Photo 
عند اتمام ال run واضافة منتج جديد تظهر لى هذة الرسالة


data type mismatch in criteria expression

استخدم فيجوال بيسك 2012 واكسس 2010

اريد حل لهذة المشكلة بالله عليكم ودة الكود 
كود :
Public Class FRM_ADD_PRODUCTS

   Private Sub btnsave_Click(sender As Object, e As EventArgs) Handles btnsave.Click


       Try

           cmd = New OleDbCommand("INSERT INTO TBL_PRODUCTS (Label, Qty, Price) values (@Label, @Qty, @Price)", con)

           cmd.Parameters.Add(New OleDbParameter("@Label", OleDbType.VarChar)).Value = txtname.Text

           cmd.Parameters.Add(New OleDbParameter("@Qty", OleDbType.Integer)).Value = txtqty.Text

           cmd.Parameters.Add(New OleDbParameter("@Price", OleDbType.Currency)).Value = txtprice.Text

           con.Open()

           cmd.ExecuteNonQuery()


           MsgBox("تمت الاضافة بنجاح", MsgBoxStyle.Information, "الاضافة")
       Catch ex As Exception
           MsgBox(ex.Message)
       End Try
       con.Close()
   End Sub
End Class
الرد }}}
تم الشكر بواسطة:
#2
كود :
Public Class FRM_ADD_PRODUCTS

   Private Sub btnsave_Click(sender As Object, e As EventArgs) Handles btnsave.Click


       Try

           cmd = New OleDbCommand("INSERT INTO TBL_PRODUCTS (Label, Qty, Price) values (@Label, @Qty, @Price)", con)

           cmd.Parameters.AddWithValue("@Label", txtname.Text.Trim)

           cmd.Parameters.AddWithValue("@Qty", Val(txtqty.Text))

           cmd.Parameters.AddWithValue("@Price", Val(txtprice.Text))

           If con.State <> ConnectionState.Open Then con.Open()

           cmd.ExecuteNonQuery()


           MsgBox("تمت الاضافة بنجاح", MsgBoxStyle.Information, "الاضافة")
       Catch ex As Exception
           MsgBox(ex.Message)
       Finally
           con.Close()
       End Try
   End Sub
End Class
الرد }}}
تم الشكر بواسطة: elgokr
#3
(11-08-18, 07:37 AM)Null كتب :
كود :
Public Class FRM_ADD_PRODUCTS

   Private Sub btnsave_Click(sender As Object, e As EventArgs) Handles btnsave.Click


       Try

           cmd = New OleDbCommand("INSERT INTO TBL_PRODUCTS (Label, Qty, Price) values (@Label, @Qty, @Price)", con)

           cmd.Parameters.AddWithValue("@Label", txtname.Text.Trim)

           cmd.Parameters.AddWithValue("@Qty", Val(txtqty.Text))

           cmd.Parameters.AddWithValue("@Price", Val(txtprice.Text))

           If con.State <> ConnectionState.Open Then con.Open()

           cmd.ExecuteNonQuery()


           MsgBox("تمت الاضافة بنجاح", MsgBoxStyle.Information, "الاضافة")
       Catch ex As Exception
           MsgBox(ex.Message)
       Finally
           con.Close()
       End Try
   End Sub
End Class

شكرا على رد حضرتك ..ولكن ايضا بتيجى نفس الرسالة عند اضافة المنتج 
ممكن يكون اية تانى المشكلة فى هذا الكود؟؟

شكرا
الرد }}}
تم الشكر بواسطة: elgokr
#4
ضع cmd.Parameters.Clear مباشرة بعد سطر cmd = New OleDbCommand

على افتراض ان
Label نص
و Qty رقم
و Price رقم

اذا استمرت المشكلة ضع المشروع
الرد }}}
تم الشكر بواسطة: elgokr , elgokr
#5
(11-08-18, 08:21 AM)Null كتب : ضع cmd.Parameters.Clear مباشرة بعد سطر cmd = New OleDbCommand

على افتراض ان
Label نص
و Qty رقم
و Price رقم

اذا استمرت المشكلة ضع المشروع

[url=https://up.top4top.net/downloadf-953kttx91-rar.html]دة رابط المشروع + قاعدة البيانات[/url]
الرد }}}
تم الشكر بواسطة: elgokr
#6
لم أجدك استخدمت الكود الذي اعطيتك إياه في أول رد لي
الرد }}}
تم الشكر بواسطة: elgokr
#7
(11-08-18, 08:51 AM)Null كتب : لم أجدك استخدمت الكود الذي اعطيتك إياه في أول رد لي

بالفعل تم استخدامة .. ولكن لان المشكلة مازلت مستمرة فضلت اعرض عليك الكود الاصلى الذى قمت انا بكتابتة
الرد }}}
تم الشكر بواسطة: elgokr
#8
بعد مراجعة قاعدة البيانات اتضح ان
Label رقم ومن اسمه يفترض أنه نص
وQty نص ومن اسمه يفترض انه رقم

راجع انواع بيانات الاعمدة في قاعدة البيانات

مع استخدام الكود الذي اعطيتك في ردي الاول كاملا
الرد }}}
تم الشكر بواسطة: elgokr , mostafa hasanein
#9
تم العديل على السورس المرفق

حيث تم التعديل على مسار الاتصال بقاعدة البيانات ليتم وضع قاعدة البيانات بجانب البرنامج
من خلال الملف ( App.config ) كما موضح فى الصورة التالية

كما تم التعديل على قاعدة البيانات لاتمام حل مشكلة الرسالة كما هو موضح فى الصورة التالية

وما تم التعديل فى قاعدة البيانات هو استبدال Data Type لكل من
Label - Qty

عند الانتهاء من المشروع لا تنسي ان تقوم بنسخ الملفات كما هو مرفق فى مجلد البرنامج للاختبار
حيث ان الملف ORDERS_MANAGE.exe.config هو عبارة عن App.config
ويجب نسخه مع البرنامج بالنهاية بسبب اسلوب الاتصال بقاعدة البيانات حيث يمكنك تحريره فى اى وقت
وتغيير مسار قاعدة البيانات من خلاله

مرفق السورس بعد التعديل + برنامج اختبار

تحياتى لك
وتمنياتى لك التوفيق


الملفات المرفقة
.zip   Pro Exe.zip (الحجم : 109.08 ك ب / التحميلات : 13)
.zip   ORDERS_MANAGE.zip (الحجم : 171.44 ك ب / التحميلات : 23)
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى    لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل 
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد }}}
تم الشكر بواسطة: Abou Eman , Abou Eman , mostafa hasanein , Null , Null
#10
(11-08-18, 09:19 AM)Null كتب : بعد مراجعة قاعدة البيانات اتضح ان
Label رقم ومن اسمه يفترض أنه نص
وQty نص ومن اسمه يفترض انه رقم

راجع انواع بيانات الاعمدة في قاعدة البيانات

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

شكراا جدا
الرد }}}
تم الشكر بواسطة: elgokr , Abou Eman , Abou Eman , Null , Null



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


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