PDA

View Full Version : مشکل با درج تاریخ در Access



profnami
جمعه 07 آبان 1389, 22:36 عصر
سلام
بنده با درج تاریخ در ACCESS2003 مشگل پیدا کردم . من فیلد تاریخ رو دارم که از نوع DateTime در پایگاه داده است . اما وقتی تاریخ درج میکنم پیام خطا میگیرم :



using (OleDbConnection con = new OleDbConnection(System.Web.Configuration.WebConfig urationManager.ConnectionStrings["UniCon"].ConnectionString))
{
using (OleDbCommand com = new OleDbCommand("INSERT INTO test ([newdate]) VALUES (?)", con))
{
com.Parameters.AddWithValue("newdate", DateTime.Now);
con.Open();
com.ExecuteNonQuery();
con.Close();
}
}




data type missmatch in criteria expression

debugger
جمعه 07 آبان 1389, 22:59 عصر
فیلد تاریخ را در دیتا بیس از نوع رشته بگیر

و DateTime.Now را یک toString() اخرش بزار

راستی تاریخ را باید به صورت 02/08/89 وارد کنی DateTime.Now دقیقا اینو بر نمی گردونه اخرش هم یه pm ای am ای میزاره

باید خودت یه تابع بنویسی برای این منظور که تاریخ درست درج بشه

profnami
جمعه 07 آبان 1389, 23:10 عصر
یعنی نمیشه به صورت DateTime درج کرد؟ پس این نوع رو برای چی گذاشتن؟ ممکنه؟

debugger
جمعه 07 آبان 1389, 23:19 عصر
اگر فیلد تاریخ را در دیتا بیس از نوع date time بگیری بعد ها به مشکل بر میخوری

همیشه حتی اکسس کار ها هم میگن فیلد تاریخ را از نوع رشته بگیر

شما تاریخ میلادی درج میکنی یا شمسی

اگر میلادی درج میکنی بدین شکل عمل کن



DateTime.Now.ToString().Remove(10,13)


اگر شمسی درج میکنی که دیگه نیازی به این کار نیست

L u k e
شنبه 08 آبان 1389, 10:04 صبح
نه شما همون دیت در نظر بگیر در غیر اینصورت به مشکل برمی خوری موقع جستجو
Datetime در نظر بگیر بعد با یه سری تبدیلات راحت به شمسی تبدیلش کن و تو برنامه ازش استفاده کن

chasbonakam
شنبه 08 آبان 1389, 11:33 صبح
سلام
برای درج تاریخ در access شما باید مقدار مورد نظرتون رو بین دوتا # قرار بدین
به این صورت
insert into table1 (field1)values(#valueDate#) h