انجمن اراکل

انجمن علاقمندان اراکل

انجمن اراکل

انجمن علاقمندان اراکل

تاریخ خورشیدی

یکی از مشکلاتی که ما ایرانیها همیشه با نرم افزارهای خارجی داریم تاریخ شمسی است. اما در زیر خواهیم دید که اراکل در این زمینه چه فعالیتی انجام داده است و یک راهکار هم پیشنهاد می دهیم که البته بنده خودم اعتقادی به آن ندارم اما در بین جماعت اراکلی و برنامه نویسان مرسوم می باشد.

از اراکل ۸ به بعد، بانک اطلاعاتی اراکل از تاریخ خورشیدی پشتیبانی می نماید. برای اعمال این پشتیبانی می بایست پارامترهای بانک اطلاعاتی را تغییر داد و نیازی به هیچگونه تابعی نیز وجود نخواهد داشت. این تغییرات می تواند در دو قسمت اعمال شود:

  • در سطح Session

در SQLPlus یا در iSQLPlus زمانی که با نام کاربری و کلمه عبور Login کردید می توانید Session را تغییر دهید و از این به بعد تاریخ را خورشیدی مشاهده نمایید. برای اینکار عبارت زیر را تایپ نمایید.

SQL> Alter session set NLS_CALENDAR=persian

حالا دستور زیر را تایپ نمایید تا نتیجه را مشاهده کنید.

SQL> SELECT hiredate FROM emp

چطور بود؟؟؟!!!

  • در سطح Oracle_home

در رجیستری ویندوز باید در Home مربوطه NLS_CALENDAR=persian باشد.

در زیر هم یک تاکتیک مشاهده می نمایید که البته جالب نیست اما مرسوم است:

در زمان تعریف فیلد تاریخ در بانک اطلاعاتی نوع تاریخ را عددی مثلا ۸ تایی در نظر بگیرید و به آن Mask به صورت ۹۹/۹۹/۹۹ بدهید یا عددی ۱۰ تایی تعریف کنید و از مسک ۹۹۹۹/۹۹/۹۹ استفاده نمایید.

امیدوارم که مفید فایده بوده باشد.

نظرات 0 + ارسال نظر
برای نمایش آواتار خود در این وبلاگ در سایت Gravatar.com ثبت نام کنید. (راهنما)
ایمیل شما بعد از ثبت نمایش داده نخواهد شد