ورود

View Full Version : سوال: ثبت تاریخ در بانک



nazanin0
دوشنبه 10 آبان 1389, 12:09 عصر
سلام دوستان
من در فرمی که طراحی کردم قصد دارم تاریخ شمسی رو وارد masktextbox کنم و با زدن گزینه ثبت این تاریخ رو به همراه سایر اطلاعات وارد بانک کنم ولی وقتی گزینه ثبت رو می زنم پیغام زیر رو می ده . (برای تاریخ از dll استفاده کردم و نوع متغیر رو هم با datetime,varchar امتحان کردم اما باز همین پیغام رو می ده )
لطفاً راهنمایی کنید.
با تشکر

Behrouz1985
دوشنبه 10 آبان 1389, 12:16 عصر
سلام
پیغام زیر منظورت کدومه؟!!!
توی sql نمی تونی تاریخ شمسی رو به عنوان تاریخ وارد کنی. برا همین دو راه داری:
1- فیلد تاریخ رو varchar یا nvrvchar انتخاب کنی با طول 10
2- تاریخ رو میلادی ذخیره کنی و موقع استفاده تبدیلش کنی
موفق باشی

nazanin0
دوشنبه 10 آبان 1389, 16:09 عصر
سلام
ممنون که راهنمایی می کنید در ضمن تصویر رو ضمیمه کرده بودم گویا ارسال نشده اینهم تصویر:

همونطور که قبلاً گفتم نوع فیلد رو تغیر دادم ولی تأثیر نداشت واینکه تاریخ باید حتماً شمسی وارد بشه.
راه دیگه ای نداره؟؟؟

حمیدرضاصادقیان
دوشنبه 10 آبان 1389, 22:55 عصر
سلام.شما نمیتونید تاریخ شمسی رو در قالب فیلد Datetime ذخیره کنید به خاطر اینکه این فیلد تاریخ رو به صورت میلادی ذخیره میکنه و شما باید هنگام نمایش اونو به شمسی تبدیل کنید.اگر میخواهید مستقیم تاریخ شمسی رو ذخیره کنید باید نوع فیلد رو char(10) بگیرید اینجوری مشکل حل میشه.
موفق باشید

Behrouz1985
سه شنبه 11 آبان 1389, 11:25 صبح
سلام
ممنون که راهنمایی می کنید در ضمن تصویر رو ضمیمه کرده بودم گویا ارسال نشده اینهم تصویر:

همونطور که قبلاً گفتم نوع فیلد رو تغیر دادم ولی تأثیر نداشت واینکه تاریخ باید حتماً شمسی وارد بشه.
راه دیگه ای نداره؟؟؟
خب این پیغام بیچاره که خودش داره می گه که فرمت تاریخ اشتباهه
منم همین مشکلو داشتم، در نهایت فیلد تاریخ رو varchar(10) گذاشتم و اینجوری مشکلم حل شد که البته در اینصورت باید یه جای دیگه کنترل کنی که متن وارد شده به فرمت تاریخ باشه.
البته اگه تاریخ رو میلادی ذخیره کنی فکر کنم خیلی بهتره.