PDA

View Full Version : مشکل در ذخیره اطلاعات



okpnz1
یک شنبه 15 تیر 1393, 09:31 صبح
سلام
واقعا موندم چیکار کنم یه سری اطلاعات داخل فرم دارم که می خوام اون ها رو با پر کردن کابر ذخیره کنم داده هام یسریش تکس و یه سری چک باکس هست
همیشه به صورت زیر ذخیره در دیتا بیس رو انجام میدم در همین سایت هم چند بار این کار رو اجام دادم بدون هیچ مشکلی ولی الان به مشکل برخوردم
کد و اررو رو میذارم که کسی اگر می تونه کمکم کنه اینم بگم که از سه طریق استورپروسیجر و دیتا تیبل و همین کد زیر هم انجام دادم ولی باز ارور می گیره که اطلاعات در هرحال ارسال با تعداد فیلد برابری نداره

using (SqlConnection con = new SqlConnection(strConnString))
{
string sql_insert = "INSERT INTO [employment] (name, tel, email, date , price , farsi, arabi, en) values (N'"
+ Txt_user.Text + "' , N'"
+ txt_tel.Text + "' , N'"
+ txt_Email.Text + "' , N'"
+ txtdate.Text + "' + N'"
+ txtprice.Text + "' + '"
+ch_f.Checked + "' , '"
+ ch_a.Checked + "'+ N'"
+ ch_en.Checked + "')";

SqlCommand command = new SqlCommand(sql_insert, con);
con.Open();
command.ExecuteNonQuery();
con.Close();
lblresult.Visible = true;
}
}

nice_boy_a
یک شنبه 15 تیر 1393, 10:17 صبح
سلام. دوست عزیز مشکل از روش نیست،دستور SQL مشکل داره.

aslan
یک شنبه 15 تیر 1393, 11:16 صبح
سلام
ظاهرا چند تا ویرگول یادتون رفته .................... ( بعد از date و price و ch_a و .......... )

okpnz1
یک شنبه 15 تیر 1393, 12:04 عصر
سلام
ظاهرا چند تا ویرگول یادتون رفته .................... ( بعد از date و price و ch_a و .......... )
اینجا اشتباه تایپ شده مشکل از این نیست

okpnz1
یک شنبه 15 تیر 1393, 12:05 عصر
سلام. دوست عزیز مشکل از روش نیست،دستور SQL مشکل داره.

چه مشکلی؟ من از این روش استفاده کردم برای 3 صفحه دیگه آخه:متفکر:


DateTime dt = DateTime.Now;
string sql_insert = "INSERT INTO [contact] (name , subject , tel ,email , dsc , time) values (N'"
+ Txt_user.Text + "' , N'" + txt_tilte.Text + "' , '" + txt_tel.Text + "' , N'"
+ txt_Email.Text + "' , N'" + txt_text.Text + "' , '" + dt + "')";

SqlCommand command = new SqlCommand(sql_insert, con);
con.Open();
command.ExecuteNonQuery();
con.Close();
cleartext();

lblresult.Visible = true;
دقیقا در صفحه ارتباط با ما من این کد رو زدم و هیچ مشکلی هم پیش نیومده

aslan
یک شنبه 15 تیر 1393, 14:52 عصر
اینجا اشتباه تایپ شده مشکل از این نیست

???!!!!!!!!!!!
این دیگه چه جور درخواست رفع اشکاله ؟؟؟؟!!!!!!!!!!!!! ( کدی که اینجا قرار دادین با چیزی که استفاده کردین مغایرت داره و انتظاردارین بهتون کمک بشه ...... )
متن خطا بهتون میگه که تعداد value ها مغایر با تعداد فیلدهاست ............ ( به احتمال زیاد مشکل از همون موضوعیه که گفتم ... )
اگرکدی که اینجاگذاشتین غیر از چیزیه که استفاده کردین بهتره دقیقا کدی که استفاده کردین و بهتون خطا میده را اینجا قرار بدین
موفق باشین

okpnz1
یک شنبه 15 تیر 1393, 17:01 عصر
???!!!!!!!!!!!
این دیگه چه جور درخواست رفع اشکاله ؟؟؟؟!!!!!!!!!!!!! ( کدی که اینجا قرار دادین با چیزی که استفاده کردین مغایرت داره و انتظاردارین بهتون کمک بشه ...... )
متن خطا بهتون میگه که تعداد value ها مغایر با تعداد فیلدهاست ............ ( به احتمال زیاد مشکل از همون موضوعیه که گفتم ... )
اگرکدی که اینجاگذاشتین غیر از چیزیه که استفاده کردین بهتره دقیقا کدی که استفاده کردین و بهتون خطا میده را اینجا قرار بدین
موفق باشین

نه نه منظورمو بد متوجه شدین یعنی در کد اصلی ویرگول ها رو درست گذاشتم:چشمک:

ahmad156
یک شنبه 15 تیر 1393, 20:55 عصر
دوست عزیز 100% مشکل از کوئری تون هست.پیغام خطا هم میگه تعداد ورودی هاتون کمتر از تعداد Column هاتون هست که به احتمال خیلی زیاد ویرگول کم گذاشتین.
در هر صورت بهترین راه Break Point بذارین و مقدار Command رو توی Sql Server Managment کپی کنین متوجه میشین

okpnz1
یک شنبه 15 تیر 1393, 21:50 عصر
مرسی از پاسختون
اینم امتحان می کنم ولی مطمئنم از ویرگول نیست فقط فرقی که اونیکیا دارن اینه که چک باکس ندارن (منظورم همون کد دومی هست که گذاشتم تو پست بالا)

ahmad156
یک شنبه 15 تیر 1393, 22:00 عصر
کدتون رو زمان اجرا(با Break Point) بذارین

okpnz1
یک شنبه 15 تیر 1393, 22:10 عصر
الان استفاده کنم ببینم چی میشه
مرسی

okpnz1
یک شنبه 15 تیر 1393, 22:26 عصر
:خجالت: من شرمنده دوستان هستم اره یکی از ویرگولارو یادم رفته بود بزنم آخه اینجا خلاصه کردم تعداد فیلدارو تو برنامم 15 تا فیلد بود :خجالت:
مرسی واقعا که کمکم کردین