PDA

View Full Version : مبتدی: مشکل ثبت نشدن اطلاعات در دیتابیس



farhad845
چهارشنبه 30 مرداد 1392, 23:30 عصر
سلام....
من اطلاعات رو که ثبت می کنم بعضی وقتها ارور میده.. بیشتر وقتها میگه ثبت شد و نمایش اطلاعات رو میزنیم نشون می ده اطلاعات جدید ثبت شده... ولی برنامه رو که می بندم و باز می کنم نمایش اطلاعات رو که میزنم جدید ها نمی یاد. اینم کد


private void btnsave_Click(object sender, EventArgs e)
{
SqlConnection conn = new SqlConnection();
conn.ConnectionString =
@"Data Source=.\SQLEXPRESS;
AttachDBFilename=|DataDirectory|\Havale.mdf;
Integrated Security=True;User Instance=True";
conn.Open();

SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;

string sql = "insert into Vam (Date,Bank,shomarechek,Price,Vam,Status,More)";
sql += "VALUES ({0},'{1}',{2},{3},{4},'{5}','{6}')";
sql = string.Format(sql,
txtdate.Text,
txtbank.Text,
txthavale.Text,
txtprice.Text,
txtvam.Text,
txtstatus.Text,
txtmore.Text);

cmd.CommandText = sql;
cmd.ExecuteNonQuery();

MessageBox.Show("اطلاعات ثبت گردید");
this.Close();

}

Amin69
چهارشنبه 30 مرداد 1392, 23:54 عصر
سلام. احتمالا زمان اجرای برنامه، برنامه از یک دیتابیس دیگه استفاده میکنه. فایل کامپایل شده رو دروشه ibn رو مستقیما اجرا کنید و ببینید که اونجا جواب میده یا نه؟

mehran6764
پنج شنبه 31 مرداد 1392, 00:02 صبح
سلام

یحتمل شما اگر داخل پوشه اتونو سرچچ کنید می بینید که دو فایل Havale.mdf دارید ! یکی از اونا تو پوشه ریشه برنامه است
و یکی دیگه داخل پوشه Debug
جالب اینجاست که هر وقت کد رو تغییر می دین ، دیتابیس داخل پوشه Debug از نو ساخته میشه

davidrobert
پنج شنبه 31 مرداد 1392, 00:05 صبح
یک لیل که داری شما میبنید اطلاعات ثب میشن و وقتی برنامه رو میبندید و باز میکنید میبنید هیچ اطلاعاتی موجود نیست در دیتابیس دلیل اصلیش این هستش که وقتی برنامه رو اجرا میکنید اطلاعات کپی میشن و روی اطلاعات کپی شده اطلاعات ذخیره میشن اون موقع شما وقتی برنامه رو ببنید و باز کنید میبنید اطلاعات نیست یا ثبت نشوده چون روی فایل کپی هستش اطلاعات و وقتی دوباره برنامه رو باز میکنید اطلاعات کپی میشن و اطلاعات قبلی از بین میرین بخاطر همین هستش کهشما فکر میکنید اطلاعات ثبت نمیشه چون بانک اطلاعات در کنار سورس برنامه هستش و موقع اجرا کپی میشه داخل پوشه بنBIN اون موقع شما و وقتی برنامه رو ببنید و باز کنید فکر میکنید اصلا اطلاعات ثبت نمیشه ولی اطلاعات ثبت شده.

mousa1992
پنج شنبه 31 مرداد 1392, 01:00 صبح
این شد ی سوال درست ;)
حرف دوستان کاملا صحیح اما چرا هیچ کدوم ی راه حل ارائه نکردین ؟
دو راه داری :
1 - تغییر |DataDirectory| در connectionstring به ادرس دیتابیس اصلی ( که کنار سورس های برنامتون هست )
2 - انتخاب فایل های دیتابیس در Solution explorer و تغییر خاصیت Copy to output directory به do not copy در بخش properties

بابت پست اون روز عذر خواهی منو بپذیرید - در ضمن کاره ای نیستم فقط کاربر سایتم مثل شما

موفق باشی

mehran6764
پنج شنبه 31 مرداد 1392, 09:37 صبح
این شد ی سوال درست ;)
حرف دوستان کاملا صحیح اما چرا هیچ کدوم ی راه حل ارائه نکردین ؟
دو راه داری :
1 - تغییر |DataDirectory| در connectionstring به ادرس دیتابیس اصلی ( که کنار سورس های برنامتون هست )
2 - انتخاب فایل های دیتابیس در Solution explorer و تغییر خاصیت Copy to output directory به do not copy در بخش properties

بابت پست اون روز عذر خواهی منو بپذیرید - در ضمن کاره ای نیستم فقط کاربر سایتم مثل شما

موفق باشی

یه سوالی برا پیش اومد
اگه از این راه حل ها استفاده بشه ، موقعی که برای برنامه Setup درست میشه ، تو کامپیوتر کاربر نهایی اجرا میشه مشکلی پیش نمیاد ؟

davidrobert
پنج شنبه 31 مرداد 1392, 13:30 عصر
نه دوست عزیر مشکلی پیش نمیاد چون تو فایل اجرای و دیتابیس تو ساخت setup پیش هم قرار میدید و پیش هم هستش با مشکلی بر خورد نمیکنه و اطلاعاتی که ذخیره میشه یا ویرایش و حذف با هر بار باز و بسته کردن برنامه از بین نمیره و بانک اطلاعات هی به روز میشه و اطلاعات باقی می ماند.چون فایل اجرا و پایگاه داده پیش هم هستش و اطلاعات همون جا در جا ثبت میشه.

farhad845
پنج شنبه 31 مرداد 1392, 13:37 عصر
این شد ی سوال درست ;)
حرف دوستان کاملا صحیح اما چرا هیچ کدوم ی راه حل ارائه نکردین ؟
دو راه داری :
1 - تغییر |DataDirectory| در connectionstring به ادرس دیتابیس اصلی ( که کنار سورس های برنامتون هست )
2 - انتخاب فایل های دیتابیس در Solution explorer و تغییر خاصیت Copy to output directory به do not copy در بخش properties

بابت پست اون روز عذر خواهی منو بپذیرید - در ضمن کاره ای نیستم فقط کاربر سایتم مثل شما

موفق باشی
مرسی .. خواهش می کنم.... شما آقایی
هر کاری راهی داره

با فیلم هایی که دوست عزیزمون معرفی کرد و روزی یک ساعت وقتی که توی این سه چهار روز گذاشتم کارم به اینجا رسید.بازم ممنون

109544

mousa1992
پنج شنبه 31 مرداد 1392, 14:37 عصر
اگه از این راه حل ها استفاده بشه ، موقعی که برای برنامه Setup درست میشه ، تو کامپیوتر کاربر نهایی اجرا میشه مشکلی پیش نمیاد ؟
نه مشکلی ایجاد نمیشه - فقط موقع ساخت Setup اگه از روش 1 استفاده کردی connectionstring رو به همون |DataDirectory| ( که در واقع اشاره داره به ادرش exe برنامه) تغییر بده تا دچار مشکل نشه برنامه


مرسی .. خواهش می کنم.... شما آقایی
ممنون از لطفتون



با فیلم هایی که دوست عزیزمون معرفی کرد و روزی یک ساعت وقتی که توی این سه چهار روز گذاشتم کارم به اینجا رسید.بازم ممنون
عالیه موفق باشید

farhad845
جمعه 01 شهریور 1392, 12:17 عصر
سلام.. این ادرس فایلمه
http://public.fileup.ir/d/2139799/Vam.zip
بعضی وقتها اطلاعات صبت میشه می بندم میام باز می کنم دیگه نیست..
یه بار ارور میده اصلا ثبت نمیشه
اگه کسی حل کرد بگه ما هم یاد بگیریم ممنون میشم. حل نکردید بازم ممنون میشم..:لبخند:

farhad845
یک شنبه 03 شهریور 1392, 12:27 عصر
کسی نیست؟؟
:افسرده:

mousa1992
دوشنبه 04 شهریور 1392, 02:43 صبح
بعضی وقتها اطلاعات صبت میشه می بندم میام باز می کنم دیگه نیست..
از اون روش هایی که تو اولین پستم گفتم استفاده کردی ؟


یه بار ارور میده اصلا ثبت نمیشه

ارور رو بذار اینجا به همراه کدهایی که برا ثبت نوشتین تا دوستان کمکتون کنن

farhad845
دوشنبه 04 شهریور 1392, 13:56 عصر
از اون روش هایی که تو اولین پستم گفتم استفاده کردی ؟

ارور رو بذار اینجا به همراه کدهایی که برا ثبت نوشتین تا دوستان کمکتون کنن
ارور خطی و کدی نمیده تا میزنیم یه بار ثبت می کنه یه بار تا ثبت می زنیم میاد به این گیر میده

cmd.ExecuteNonQuery();
و یه کادر زرد باز می کنه

RIG000
دوشنبه 04 شهریور 1392, 14:11 عصر
ببین دوست عزیز شما دیگه از اون دیتابیست استفاده نکن ....
یه دیتابیس مثل همون بساز.....
اگه دیدی باز مورد داره باید اسم جداولت رو حتی نام دیتابیست رو عوض کنی...
اگه فقط یه جدولت این مورد رو داره میتونی با حذف جدولت و دوباره ساختنش این کار رو کنی ولی در صورت امکان اسم جدولت رو عوض کن .

Amin69
دوشنبه 04 شهریور 1392, 14:13 عصر
فایل‌تون رو نتونستم دانلود کنم. اگه میشه فایل‌تون رو از یه جایی دیگه مثه همین سایت یا picofile.com آپلود کنید شاید بتونم کمکتون کنم.

farhad845
دوشنبه 04 شهریور 1392, 19:51 عصر
فایل‌تون رو نتونستم دانلود کنم. اگه میشه فایل‌تون رو از یه جایی دیگه مثه همین سایت یا picofile.com آپلود کنید شاید بتونم کمکتون کنم.
http://s2.picofile.com/file/7909800107/Vam.zip.html

armagram
چهارشنبه 06 شهریور 1392, 18:37 عصر
من یه برنامه نوشتم و تقریبا مشکل بالا رو دارم. وقتی مسیر رو پاک می کنم و |DateDirectory| می نویسم اطلاعات توی جدول وارد نمی شه اما وقتی مسیر دستکاری نشده رو می دم به conncetingstring برنامه ارور نمی ده و چیزیم تو دیتا بیس ذخیره نمی شه.
الان باید چکار کنم؟