• وبلاگ : شايد سخن حق
  • يادداشت : تبديل ساده تاريخ ميلادي به شمسي در SQL Server
  • نظرات : 1 خصوصي ، 28 عمومي
  • تسبیح دیجیتال

    نام:
    ايميل:
    سايت:
       
    متن پيام :
    حداکثر 2000 حرف
    كد امنيتي:
      
      
     
    + بازم علي 
    سلام.بايد بگم مشکل قبلي بنده حل شد اما يه ايراد و اون اينکه توي تابع دوم(G2J_Fast)نميتونيد فرمت خروجي را تعيين کنيم!
    پاسخ

    سلام. آيا جاي كوتيشن‌مارك‌ها را با آپستروف عوض كرديد؟ من به جهت اين‌كه در وبلاگ نمي‌شد از آپستروف استفاده كرد، كوتيشن‌مارك قرار دادم. تابع به نحوي طراحي شده كه حتي اگر رشته اشتباهي هم در فرمت قرار دهيد، متوقف نشده و كارش را انجام مي‌دهد. يعني تنها كاري كه با رشته فرمت انجام مي‌پذيرد اين است كه پس از توليد تاريخ شمسي، با نمادهاي استفاده شده در رشته فرمت جايگزين مي‌گردد. پس منطقي نيست و نبايد درج فرمت مشكلي در اجراي تابع اصلي ايجاد نمايد. يك اشتباهي هم ممكن است صورت داده باشد و آن اين‌:كه: من دو عدد تابع G2J‌ نوشته‌ام؛ اولي بدون فرمت است و اصلاً چنين پارامتري ندارد و دومي دارد. شما ممكن است تابع اول را ساخته باشيد و معلوم است كه حالا نمي‌توانيد پارامتري به عنوان فرمت براي آن ارسال كنيد. تابع را باز كنيد و ببينيد كدام را ساخته‌ايد. اگر در سطر اول آن پارامتر فرمت ثبت نشده، آن تابع را حذف كنيد؛ DROP و يك بار ديگر تابع دوم G2J كه داراي دو پارامتر و آرگومان است @intDate DATETIME, @Format NVARCHAR را بسازيد.