مشکل update در بانک access
با سلام خدمت دوستان عزیز
من یه برنامه دارم که دیتابیس اون اکسس هست
فرمی طراحی کردم برای ویرایش اطلاعات بانک
حالا هرکاری میکنم اطلاعات جدید جایگزین اطلاعات قبلی نمیشن
و اینم بگم با کدی که نوشتم هیچ مشکلی نداره و برنامه اجرا میشه ولی عمل نمیکنه
اینم کد:
oleDbCommand1.Parameters.Clear();
oleDbCommand1.CommandText = ("update table set name=@a, lname=@b, fthname=@c, ncode=@d where id=@j");
oleDbCommand1.Parameters.AddWithValue("@a", textBox1.Text);
oleDbCommand1.Parameters.AddWithValue("@b", textBox2.Text);
oleDbCommand1.Parameters.AddWithValue("@c", textBox3.Text);
oleDbCommand1.Parameters.AddWithValue("@d", textBox4.Text);
oleDbCommand1.Parameters.AddWithValue("@j", textBox10.Text);
oleDbConnection1.Open();
oleDbCommand1.ExecuteNonQuery();
oleDbConnection1.Close();
MessageBox.Show("!تغییرات به درستی ثبت گردید");
و اینم بگم که id که توی جدول مربوط به سطر هست، توی textbox10 میشینه
طبق اون where رو نوشتم
نقل قول: مشکل update در بانک اکسس!!!!!
سلام دوست من وقتت بخیر ، اول اینکه چرا textboxهای فیلد های ncode و id رو تبدیلشون نکردی به int ؟!
کد رو به این صورت بنویس
oleDbCommand1.Parameters.Clear();
oleDbCommand1.CommandText = ("update table set name=@a, lname=@b, fthname=@c, ncode=@d where id=@j");
oleDbCommand1.Parameters.AddWithValue("@a", textBox1.Text);
oleDbCommand1.Parameters.AddWithValue("@b", textBox2.Text);
oleDbCommand1.Parameters.AddWithValue("@c", textBox3.Text);
oleDbCommand1.Parameters.AddWithValue("@d", Convert.Toint32(textBox4.Text));
oleDbCommand1.Parameters.AddWithValue("@j", Convert.Toint32(textBox10.Text).Trim());
oleDbConnection1.Open();
oleDbCommand1.ExecuteNonQuery();
oleDbConnection1.Close();
MessageBox.Show("!تغییرات به درستی ثبت گردید");
نقل قول: مشکل update در بانک اکسس!!!!!
ممنون از پاسخ شما
ولی متاسفانه این کار هم جواب نداد
نقل قول: مشکل update در بانک اکسس!!!!!
سلام
برنامه پیغامی که توی مسیج باکس نوشتید رو نمایش میده یا نه؟
نقل قول: مشکل update در بانک اکسس!!!!!
سلام دوست عزیز
اینو تست کن ببین ایشالا مشکلت حل بشه
//oleDbCommand1.Parameters.Clear();
oleDbCommand1.CommandText = (@"UPDATE table SET name=@a,lname=@b,fthname=@c,ncode=@d where id=@j");
oleDbCommand1.Parameters.AddWithValue("@a",DbType. String).Value=textBox1.Text;
oleDbCommand1.Parameters.AddWithValue("@b",DbType. String).Value= textBox2.Text;
oleDbCommand1.Parameters.AddWithValue("@c",DbType. String).Value= textBox3.Text;
oleDbCommand1.Parameters.AddWithValue("@d",DbType. Int16).Value= Convert.ToInt16(textBox4.Text);
oleDbCommand1.Parameters.AddWithValue("@j",DbType. Int16).Value= Convert.ToInt16(textBox10.Text);
oleDbConnection1.Open();
oleDbCommand1.ExecuteNonQuery();
oleDbConnection1.Close();
MessageBox.Show("!تغییرات به درستی ثبت گردید");
نقل قول: مشکل update در بانک اکسس!!!!!
این کارو هم کردم دوست عزیز ولی بازم جواب نداد:گریه::گریه::گریه:
همه سیکل بدرستی اجرا میشه و پیغام رو هم میده که تغییرات ثبت شد ولی بازم عمل نمیکنه
نقل قول: مشکل update در بانک اکسس!
به نظر من، شما دو تا بانک اطلاعاتی دارید. یکیش توی پوشه ی برنامه کنار فایل فرم ها و کلاس هاست. دومی توی پوشه Debug یا Release. باید ببینید توی کانکشن استرینگ با کدوم فایل کار میشه.