PDA

View Full Version : بدست آوردن فرمت تاریخ



ali_mnkt
جمعه 30 اسفند 1387, 11:17 صبح
سلام به دوستان

من در یکی از جدول های database ستونی دارم که تاریخ ورود و ستونی دیگر تاریخ خروج کالا باید

ثبت بشه که البته از نوع date time هستش. البته من تاریخ رو که از سیستم می گیرم و توسط

persian calender به تاریخ شمسی تبدیل می کنم (البته به صورت جدا جدا .یعنی سال و ماه و

روز رو جدا جدا بدست می یارم ) . حالا من می خوام بدونم که چطور این تاریخ جدا از هم رو

چطوری باید کنار هم قرار بدم که بشه اونو تو ستون database که از نوع date and time هست

قرار بدم ؟ (چون معمولا این اعداد به صورت string هستن)

hasan_esfahan
جمعه 30 اسفند 1387, 11:36 صبح
دوست عزیز در دیتا بیس نمی توان تاریخ شمسی قرار داد چون فکر کنم نمی توان از سال 1900 کمتر بهش داد

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


PersianCalendar pa = new PersianCalendar();
string ch = pa.GetYear(DateTime.Now) + "/" + pa.GetMonth(DateTime.Now) + "/" + pa.GetDayOfMonth(DateTime.Now);


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



DateTime dt = DateTime.Parse(ch);

salehbagheri
جمعه 30 اسفند 1387, 11:48 صبح
دوست عزيز!

بهترين كار اين است كه تاريخ رو به صورت ميلادي ذخيره كنيد و فقط در هنگام فراخواني اطلاعات، اون رو با استفاده از كلاس PersianCalendar به تاريخ شمسي تبديل كنيد و نمايش دهيد!

پس ديگر هيچ نيازي به جدا كردن ماه و سال و ... و همچنين تبديل، جمع و ضرب تاريخ نيست!

ali_mnkt
جمعه 30 اسفند 1387, 12:25 عصر
مرسی از توجهتون

البته من در برنامم تاریخ رو به شمسی تبدیل می کنم و به صورت string در database

ذخیره می کنم حالا من می خوام اطلاعات بین دو تاریخ رو در یه datagrid view نمایش بدم

آیا راهی هست ؟ (دلیل این که می خواستم تاریخ شمسی رو در ستون های database

ذخیره کنم این بود که در date time متدی هست که تاریخ های بین دو تاریخ خاص رو نشون

میده )

hasan_esfahan
جمعه 30 اسفند 1387, 12:47 عصر
مشکلی نداره از این روش استفاده کنید که تاریخ از نوع رشته باشه
"select * from tb1 where date1>='"+textBox1.Text+"' and date1<='"+textBox2.Text+"'"

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

1387/01/12 1387/12/11 1387/10/02

نه این طور مثلا
1387/2/12 1387/12/1