PDA

View Full Version : مشکل در ثبت در اکسس



edennvl
جمعه 07 مرداد 1390, 11:51 صبح
من یه برنامه درست کردم همه کار هارو صحیح انجام می ده و جالب اینکه کد رو تا اخر انجام میده و پیام ثبت رو هم انجام میده ولی تو بانکم ثبت نمیشه( بانک رو از اکسس باز می کنم چیزی توش نیست )
من ویندوزم 64 بیتی هست و
String connection :
OleDbConnection Con = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Chance\\Chance.accdb;Persist Security Info=False");
اینم یه نمونه کد از ثبت:
Con.Open();
OleDbCommand Com = new OleDbCommand("insert into Priode (PID,DP)valeus (@PID,@DP) ", Con);
Com.Parameters.AddWithValue("@PID", Convert.ToInt32(textBox1.Text));
Com.Parameters.AddWithValue("@DP", Date);
MessageBox.Show("ثبت شد");
ممنون میشم راهنماییم کنید

a_123123123123
جمعه 07 مرداد 1390, 12:06 عصر
سلام
شاید کانکشنت مشکل داره
در ضمن من تا حالا ندیدم دستور insert اینطوری باشه
من اینطوری مینویسم
insert period (pid,pd) vlaues(@pid,@pd)
الته این طوریم میتونی بنویسی
insert into perio (@pid,@pd)
امیدوارم مشکلت حل بشه

موفق باشی:لبخندساده:

Saman Hashemi
جمعه 07 مرداد 1390, 12:09 عصر
Con.Open();
OleDbCommand Com = new OleDbCommand("insert into Priode (PID,DP)valeus (@PID,@DP) ", Con);
Com.Parameters.AddWithValue("@PID", Convert.ToInt32(textBox1.Text));
Com.Parameters.AddWithValue("@DP", Date);
Com.ExecuteNonQuery();
Con.Colse()
MessageBox.Show("ثبت شد");

edennvl
جمعه 07 مرداد 1390, 13:49 عصر
سلام
شاید کانکشنت مشکل داره
در ضمن من تا حالا ندیدم دستور insert اینطوری باشه
من اینطوری مینویسم
insert period (pid,pd) vlaues(@pid,@pd)
الته این طوریم میتونی بنویسی
insert into perio (@pid,@pd)
امیدوارم مشکلت حل بشه

موفق باشی:لبخندساده:
ممنون عزیز
روش ثبتم درسته اونو مشکل نداره
اگر هم شما می گید کانکشن مشکل داره و منظور اون security اخرشه من حتی حذفشم کردم ولی اتفاقی نیفتاد من کل برنامه هامو تو SQL اینطور مینویسم فکر نکنم فرقی داشته باشه
جالب اینه که دستورات کامل اجرا و پیام ثبت هم میده ولی تو دیتا بیس هیچی ثبت نمی شه وقتی خودم تو دیتا بیس دستی ثبت میکنم با همین کانکشن نمایش میده

edennvl
جمعه 07 مرداد 1390, 13:51 عصر
Con.Open();
OleDbCommand Com = new OleDbCommand("insert into Priode (PID,DP)valeus (@PID,@DP) ", Con);
Com.Parameters.AddWithValue("@PID", Convert.ToInt32(textBox1.Text));
Com.Parameters.AddWithValue("@DP", Date);
Com.ExecuteNonQuery();
Con.Colse()
MessageBox.Show("ثبت شد");
:متفکر::متفکر::متفکر::متفکر:

hjran abdpor
جمعه 07 مرداد 1390, 14:55 عصر
کانکشن استرینگت را اینجوری تعریف کن :

con.ConnectionString = "provider=microsoft.jet.oledb.4.0;data source=d:\\main.mdb";

edennvl
جمعه 07 مرداد 1390, 18:55 عصر
کانکشن استرینگت را اینجوری تعریف کن :

con.ConnectionString = "provider=microsoft.jet.oledb.4.0;data source=d:\\main.mdb";

ممنون عزیز
ولی متاسفانه فرمت فایل اکسسم accdb هست و provider هم ورژن 12 (Microsoft.ACE.OLEDB.12.0 )
ولی یه فایل MDB هم درست کردم ولی نشد
اگر مشکل با کانکشن باشه ارور میده
الان می خوام رو یه سیستم عامل دیگه امتحان کنم

Saman Hashemi
جمعه 07 مرداد 1390, 19:29 عصر
دوست عزیز شما این خط فراموش کردید کدهاتون با کدی که من فرستادم مقایسه کنید...!

Com.ExecuteNonQuery();

edennvl
شنبه 08 مرداد 1390, 00:03 صبح
ای خدا:گریه:
دقیقا درسته
عزیز خیلی ممنون:قلب: