انجمن برنامه نویس

آموزش : توابع تاریخ شمسی جهت استفاده در Mysql

شروع موضوع توسط sorosh ‏22/1/14 در انجمن پایگاه داده MySQL

گنجینه های
برنامه نویسی
فیلم های آموزشی
زبان های برنامه نویسی
فیلم های آموزشی
پروژه محور C#
فیلم های آموزشی
برنامه نویسی اندروید
فیلم های آموزشی
طراحی سایت
فیلم های آموزشی
برنامه نویسی پایه
گنجینه برنامه نویسی C# آموزش برنامه نویسی C سیستم مدیریت بانک آموزش اندروید - مقدماتی آموزش زبان HTML اصول و مبانی برنامه نویسی
گنجینه آموزش ASP .Net آموزش برنامه نویسی C++‎ پیاده سازی مدیریت آتلیه آموزش اندروید - تکمیلی آموزش زبان CSS آموزش الگوریتم و فلوچارت
گنجینه برنامه نویسی PHP آموزش برنامه نویسی C# پیاده سازی سیستم هتلداری آموزش اندروید - پیشرفته آموزش زبان Java Script آموزش تبدیل فلوچارت به کد
گنجینه آموزش طراحی وب آموزش برنامه نویسی جاوا شبیه سازی دستگاه عابربانک آموزش ساخت لیست ایمیل آموزش زبان jQury برنامه نویسی اسمال بیسیک
گنجینه برنامه نویسی متلب آموزش برنامه نویسی PHP پیاده سازی مدیریت آموزشگاه آموزش ساخت گالری تصاویر آموزش زبان XML آموزش برنامه نویسی اسمبلی
گنجینه برنامه نویسی اندروید آموزش برنامه نویسی پایتون پیاده سازی سیستم صدور بلیت آموزش کنترل ربات با اندروید آموزش طراحی Responsive طراحی سایت ویژه کودکان
گنجینه برنامه نویسی VB .Net آموزش برنامه نویسی اندروید پیاده سازی سیستم نوبت دهی آموزش ارتباط با دیتابیس سرور ساخت سایت خبری کدنویسی سریع با Emmet
گنجینه زبان های برنامه نویسی آموزش برنامه نویسی زبان R سیستم حسابداری و انبارداری زبان بیسیک فور اندروید (B4A) ساخت سایت فروشگاه آموزش کار با پایگاه داده
  1. sorosh
    karbar Rank

    تاریخ عضویت:
    ‏21/4/13
    ارسال ها:
    186
    تشکر شده:
    37
    امتیاز دستاورد:
    32
    در تمامی پروژه ها یی که نیاز به تاریخ شمسی هست. برنامه نویسان با مشکلات خاصی ربرو هستند. در خیلی از تالار های گفتگو بارها و بارها خوندم که برای ذخیره تاریخ و محاسبات دقیق تر بر روی فیلد هایی که نوع انها تاریخ هست. بهتر هست تاریخ رو به صورت میلادی و به صورت timestamp نگهداری کنیم.خوب این روش بسیار کار آمد هست و بهینه . زیرا میتونیم با داشتن یک تاریخ میلادی ، تمامی تاریخ های دیگر همچون شمسی و قمری را استخراج کنیم. اما این روش معایب خودش رو همراه داره.این معایب رو با بیان یک مثال بررسی می کنم:
    در Mysql توابع بسیار قدرتمند و مهمی برای کار با مقادیر نوع تاریخ و زمان وجود دارد. که برنامه نویس میتواند بدون درگیر شدن با کد نویسی و با استفاده از یک دستور در خط کوئری خود به نتیجه دلخواه خودش برسه. به عنوان مثال فرض کنید. میخواهیم یک آرشیو ماهیانه برای سیستم خبری ایجاد کنیم.

    کد:
    Sorry, you need to register or login to see this BBcode !

    برنامه نویس با مثال بالا به راحتی می تواند آرشیو ماهیانه مطالب سیستم خود را ایجاد کند. البته به میلادی.
    اما برای آرشیو ماهیانه شمسی آیا جواب گو هست. جواب این هست. خیر!!!.
    برای این خواسته برنامه نوبسان روش های متنوعه ای رو بسته به نیاز خود به اجرا میگزارند. عده ای یک فیلد با جدول خود اضافه می کنند و مقادیر تاریخ شمسی را درج می کنند.عده ای دیگر می یایند تاریخ شروع مطالب . تاریخ پایانی رو پیدا میکنند. و بعد از تجزیه و تحلیل کردن آرشیو ماهانه را استخراج می کنند.تمامی روش های موجود دارای پردازش کم و بیش بالایی هستند. تا به نتیجه دلخواه برسند.
    من در این پروژه با استفاده از قابلیت تعریف پروسیجر و تابع که در نسخه ۵.x.x به بعد ارائه شد. یک سری تابع ، همانند توابع MySql شبیه سازی کردم با این تفاوت که این توابع نتیجه را به صورت شمسی بر میگردانند.
    در این پروژه ۴ تا بع کاربردی date(),month(),year(), monthname() شبیه سازی شده.
    برای استفاده از این توابع شما کافیست مراحل زیر را انجام بدید.
    ۱- دریافت فایل توابع : دریافت
    ۲- ایپورت کردن فایل در دیتابیس مورد نظر
    بعد از انجام مراحل بالا برای تست توابع می تونید. از این کوئری برای تست استفاده کنید.

    کد:
    Sorry, you need to register or login to see this BBcode !

    مثال آرشیو ماهیانه

    کد:
    Sorry, you need to register or login to see this BBcode !

    اگر نتیجه گرفتید. پس براحتی می توانید از این توابع کمال استفاده را ببرید.
    نکته : در حال حاضر فقط می توان این توابع را از نسخه ۵.۱.به بالا استفاده کرد


    منبع : soozanchi.ir
     

    پیوست ها:

    • pdate.rar
      اندازه فایل:
      کیلوبایت 1.3
      نمایش ها:
      1