alizanganeh
سه شنبه 29 اردیبهشت 1394, 22:08 عصر
سلام و خسته نباشید
من کدی رو برای محاسبه آمار بازدید مثلا دیروز استفاده میکردم که تابحال مشکلی نداشت . ولی نمیدونم چرا وقتی تاریخ از 1394/02/29 میگذره اشکال میگیره و میگه تاریخ مشکل داره و باید بین دو تاریخی که میگه باشه .
کد sql و تعریف پارامترم اینه :
cmd.CommandText = "Select Sum(Today) from tblCounter where DATEDIFF(day, Tarikh, @Tarikh) = 1";
cmd.Parameters.Add("Tarikh", SqlDbType.NVarChar, 10).Value = GetDate.NowPersianDate(DateTime.Now);
عجیبه که وقتی تاریخ رو 2 روز میبرم عقب و مثلا میشه 1394/02/27 مشکلی نداره ، ولی وقتی میشه 1394/02/30 مشکل داره .
نوع فیلد تاریخ رو وقتی Date میذارم این مشکل هست . وقتی nvarchar میذارمش میگه که تابع DATEDIFF که توی کوئری هست نمیتونه string رو به تاریخ تبدیل کنه . کلا چیز عجیبیه .
داستان چیه بنظرتون ؟
من کدی رو برای محاسبه آمار بازدید مثلا دیروز استفاده میکردم که تابحال مشکلی نداشت . ولی نمیدونم چرا وقتی تاریخ از 1394/02/29 میگذره اشکال میگیره و میگه تاریخ مشکل داره و باید بین دو تاریخی که میگه باشه .
کد sql و تعریف پارامترم اینه :
cmd.CommandText = "Select Sum(Today) from tblCounter where DATEDIFF(day, Tarikh, @Tarikh) = 1";
cmd.Parameters.Add("Tarikh", SqlDbType.NVarChar, 10).Value = GetDate.NowPersianDate(DateTime.Now);
عجیبه که وقتی تاریخ رو 2 روز میبرم عقب و مثلا میشه 1394/02/27 مشکلی نداره ، ولی وقتی میشه 1394/02/30 مشکل داره .
نوع فیلد تاریخ رو وقتی Date میذارم این مشکل هست . وقتی nvarchar میذارمش میگه که تابع DATEDIFF که توی کوئری هست نمیتونه string رو به تاریخ تبدیل کنه . کلا چیز عجیبیه .
داستان چیه بنظرتون ؟