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

مشكله بجملة Update

بدأه ahmedsakr في 5 مارس 2009 · 3 رد · 522 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

هذا هو الكود

cmd.CommandText = "update cases set case_number= @case_number where id=2";
cmd.Parameters.Clear();
cmd.Parameters.AddWithValue("@case_number", textBox_case_num.Text);
cmd.ExecuteNonQuery();

اذا كان الحقل textBox_case_num.Text به اى قيمة لا تحدث مشكله

المشكله تحدث عندما تكون قيمة الحقل textBox_case_num.Text فارغه

فلا يستطيع تحويل القيمه "" الى رقم و

يظهر الخطأ التالي

Data type mismatch in criteria expression.

نوع الحقل رقمي

نفس المشكله فى حقل اخر ونوعه date/time

وقاعدة البيانات ms access xp

منتظر ردكم

#2

لازم تستخدم DBNull.Value إذا كان مربع النص فارغ، بهذا الشكل:

if (string.IsNullOrEmpty(textBox_case_num.Text))
			{
				cmd.Parameters.AddWithValue("@case_number", DBNull.Value);
			}
			else
			{
				cmd.Parameters.AddWithValue("@case_number", int.Parse(textBox_case_num.Text));
			}

[وسط]لا اله الا انت سبحانك انى كنت من الظالمين

[/وسط]

#3

تقصد قبل ExecuteNonQuery

اتحقق من جميع الحقول "الرقميه و التاريح" واقوم بتغيير قيمة ال parameters

انا عملت كده فعلا والكود اشتغل بنجاح

ولكن السؤال هنا ألا يستطيع ال parameters بفهم الطول الصفري لل txt وتحويله بصفه تلقائيه الى DBnull.value ?

#4

هذا غير ممكن مع Parameter،

وممكن مع Data Binding .

تجد الكثير من المعلومات في هذا الكتاب :

/index.ph...&hl=Binding

[وسط]لا اله الا انت سبحانك انى كنت من الظالمين

[/وسط]

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