PDA

View Full Version : date time در بانک اطلاعاتی اکسس



شیرین احمدی
دوشنبه 14 فروردین 1391, 22:11 عصر
سلام
سال نو همگی مبارک
یه سئوال درباره ی نوع داده ی date time داشتم
یه بانک اکسس دارم که نوع داده ی یک فیلد از یکی از جداولش date time تعیین کردم
اما متاسفانه توی سی شارپ نمی تونم اطلاعاتشو ویرایش کنم . درج می شه اما آپدیت یا حذف نمی شه error date type می ده اگه کسی کمکم کنه ممنون می شم

rahdar
دوشنبه 14 فروردین 1391, 22:19 عصر
شاید مقدار تاریخ رو به صورت شمسی وارد می کنید
datetime پیش فرض در اکسس برپایه تاریخ میلادی هست.
اگه شما تاریخ شمسی رو وارد کنید به خاطر تفاوت در این دو برای اکسس قابل قبول نیست.
برای ثبت تاریخ شمسی هم اساتید در سایت روش های متنوعی قرار دادند.

omid_csh
دوشنبه 14 فروردین 1391, 22:42 عصر
سلام

سلام
سال نو همگی مبارک
یه سئوال درباره ی نوع داده ی date time داشتم
یه بانک اکسس دارم که نوع داده ی یک فیلد از یکی از جداولش date time تعیین کردم
اما متاسفانه توی سی شارپ نمی تونم اطلاعاتشو ویرایش کنم . درج می شه اما آپدیت یا حذف نمی شه error date type می ده اگه کسی کمکم کنه ممنون می شم
اگه کد قسمت درج و ویرایش رو بذاری بهتر میشه کمک کرد.

system32
دوشنبه 14 فروردین 1391, 23:05 عصر
سلام
چه اصراری است که حتما از نوع تاریخ باشه از نوع رشته تعریف کنید در ضمن کد فراموش نشه

شیرین احمدی
دوشنبه 14 فروردین 1391, 23:50 عصر
شایدم همین باشه که شما میگید برای ثبت تاریخ شمسی در کجای سایت صحبت شده؟
مجبورم تاریخ تعریف کنم باید یه جای دیگه بین دو تا تاریخ خاص که کاربر تعیین می کنه از جدول رکوردا استخراج بشه نمی دونم رشته تعریف کنم
می شه این کار رو بکنم یا نه

شیرین احمدی
سه شنبه 15 فروردین 1391, 02:49 صبح
توی سایت گشتم و پیدا کردم نحوه ی تبدیل تاریخ شمسی به میلادی و بلاعکس
مشکل ویرایشش حل شد داخل بانک ،اما یک مشکل دیگه ایجاد شد . تکس من باید تاریخ رو به شمسی نمایش دهد. از بانک به صورت میلادی استخراج می شود اما تبدیل نمی شه به شمسی این کدو می نویسم
txt7.DataBindings.Add("text", objdtv, "date_p_dasti");
t = Convert.ToDateTime(txt7.Text);
txt7.Text = Miladi2Shamsi(t(;
دقیقا خط 2 error می گیرد

rahdar
سه شنبه 15 فروردین 1391, 18:53 عصر
احتمالا دلیل خطا اینه که شما txt7 رو به فیلد تاریخ جدول Bind کردید
بعد دوباره در خط سه تاریخ میلادی رو که به شمسی تبدیل کردید در این فیلد میزارید.
تاریخ شمسی رو دریک textBox دیگه بزارید

شیرین احمدی
جمعه 18 فروردین 1391, 02:00 صبح
ممنون از توجهتون اما از یک راه دیگه اونو حل کردم رفتم همه فیلدای تاریخ رو text تعریف کردم بنابراین مشکل نمایش تاریخ به صورت شمسی حل شد . فقط جای دیگه می خواستم کاربر دو محدوده ی تاریخ رو
وارد کنه و برنامه بین اون دو تا تاریخ رو از جدول انتخاب کنه که خوشبختانه عمل مقایسه رشته ها رو درست انجام می ده مثلا date_p_ dasti > txt7.text and date_p_ dasti < txt8.text
فقط باز یه مشکل پیش می یاد که کاربر تاریخ رو حتما باید به این فورمت وارد کنه مثلا 1391/01/05 حالا چی کار کنم که تکس من inputmask داشته باشه تو سی شارپ میشه ایت کار رو کرد؟

omid_csh
جمعه 18 فروردین 1391, 12:15 عصر
سلام
میتونین از کنترل MaskedTextBox استفاده کنین.

شیرین احمدی
جمعه 18 فروردین 1391, 23:22 عصر
بنا به گفته ی شما از این کنترل استفاده کردم . ماسکو mask=0000/00/00 این عبارت قرار دادم اما زمان ورود داده کاربر می تونه مثلا اینو وارد کنه 1391/1/2 در صورتی که من می خوام دقیقا اینو وارد کنه 1391/01/02
غبر این مقایسه توی بانک درست انجام نمی شه