PDA

View Full Version : سوال: ارور هنگام insert کردن به دیتابیس با Ado



jafarpalideh
دوشنبه 17 خرداد 1395, 08:32 صبح
با سلام . تویه جدولم 25 تا فیلد دارم که یه کد Insert واسش نوشتم .


string Insert = " insert into tblmazrof Values ( '{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{ 8}','{9}','{10}','{11}','{12}','{13}','{14}','{15} ','{16}','{17}','{18}','{19}','{20}','{21}','{22}' ,'{23}','{24}' )";
Insert = string.Format(Insert, TxtNameMazrof.Text, CmbGroupMazrof.SelectedValue, CmbCustomer.SelectedValue, CmbType.SelectedValue, CmbFloot.SelectedValue, Convert.ToInt32(TxtCodeTarh.Text), Convert.ToInt32(TxtManfazDartool.Text), Convert.ToInt32(TxtManfazDarArz.Text), CmbColor1.SelectedValue, CmbColor2.SelectedValue, CmbColor3.SelectedValue, CmbColor4.SelectedValue, CmbColor5.SelectedValue, CmbColor6.SelectedValue, CmbDastgire.SelectedValue,CmbTypeGhaleb.SelectedVa lue, Convert.ToInt32(TxtTool.Text), Convert.ToInt32(TxtArz.Text), Convert.ToInt32(TxtErtefa.Text), Convert.ToInt32(TxtCodeGhaleb.Text), Convert.ToInt32(TxtToolLabChasb), Convert.ToInt32(TxtToolGhaleb.Text), Convert.ToInt32(TxtArzeGhaleb.Text), Convert.ToInt32(TxtTedadDarGhaleb.Text), Convert.ToInt32(TxtAkhal.Text));

حالا مشکل اینجاست که وقتی تمام فیلدهارو پر میکنم عمل Insert انجام میشه ولی اگه یه تکست باکس رو خالی بزارم عمل Insert انجام نمیشه و ارور Input String was Not in a Correct format

با AdoDataset هم این insert رو زدم و همین ارور رو میده .

محمد رضا فاتحی
دوشنبه 17 خرداد 1395, 09:21 صبح
با این کدی که نوشتی مشخصه همچین اتفاقی باید رخ بده....
شما دارید بهش میگید که این فیلد ها رو میخوام پر کنم وقتی بهش مقدار ارسال نکنید خطا میده

jafarpalideh
دوشنبه 17 خرداد 1395, 09:42 صبح
خوب من تویه دیتابیس اجازه ی خالی بودن این فیلد ها رو دادم ! تیک Allow Nulls همه خورده . تویه برنامه چک میکنم که خالی نباشه

محمد رضا فاتحی
دوشنبه 17 خرداد 1395, 09:59 صبح
نگاه کنید مثلا تو این کد
Convert.ToInt32(TxtCodeTarh.Text)

شما اگه این تکسباکس رو خالی بزارید خطا میده دیگه!!!

jafarpalideh
دوشنبه 17 خرداد 1395, 10:18 صبح
فرق نمیکنه ! اگه یکی از تکست ها هم خالی باشه ارور میده . همون اروری که بالا نوشتم .

jafarpalideh
دوشنبه 17 خرداد 1395, 10:37 صبح
الان که تریس کردم داره به اون Convert.ToInt32 قبل از تکست باکس ها گیر میده .
من از کامپوننت TxtproNet یکی از دوستان همین تالار دارم استفاده میکنم .این تکست باکس پیشرفته قابلیت این رو داره که همون اول بهش بگی که کاربر نتونه جز عدد وارد کنه .
میگم نکنه شاید مشکل از اونه ؟

البته وقتی Convert.ToInt32 رو از اول تکت باکسها برمیدارم درست جواب میده ولی وقتی تکست باکس رو خالی میزارم تویه دیتابیس عدد صفر رو وارد میکنه .