PDA

View Full Version : سوال: نحوه نمایش مقادیر اکسپایر شده



کامبیز اسدزاده
پنج شنبه 04 مهر 1392, 15:14 عصر
سلام

دوستان من یه سوالی دارم فرض کنید من یه فیلد دارم به نام username و یه فیلد دارم به نام expiredate حالا میخوام وقتی expiredate کوچکتر از تاریخ کنونی بود چه از لحاظ ماه / روز و سال در این صورت username مورد نظر رو نمایش بده.

فرمت کلی expiredate به صورت مقابل هست : m/d/y مثل : 9/26/2013

مشکل من اینه که فقط در صورتی که در روز جاری تاریخ فیلد expiredate یکی بود نمایش میده در این حالت در روز های بعدی دیگه نمایش نمیده چکار کنم که در صورت گذشتن تاریخ هم اطلاعات رو نمایش بده برام ؟

danialafshari
پنج شنبه 04 مهر 1392, 17:29 عصر
سلام
روزهای بعدی میشه بزرگتر مساوی ! می تونی کوئری بنویسی که بزرگتر مساوی رو نمایش بده

کامبیز اسدزاده
پنج شنبه 04 مهر 1392, 17:41 عصر
سلام
روزهای بعدی میشه بزرگتر مساوی ! می تونی کوئری بنویسی که بزرگتر مساوی رو نمایش بده

دقیقا مشکلم تو کوری هست ! هرجور تست کردم یا نشون نداد و همرو نشون میده.

مثالی میزنید که جواب بده ؟

کامبیز اسدزاده
پنج شنبه 04 مهر 1392, 23:58 عصر
یکی به دادم برسه تو کوری چجوری اعمال کنم اینو :(

behnam-soft
جمعه 05 مهر 1392, 02:37 صبح
سلام، اینطوری بنویس:

select myField1,myField2 from mytable where (date<=@mydate)

مهرداد صفا
جمعه 05 مهر 1392, 11:26 صبح
باسلام.


Command.CommandText="select * from table";
MyDataTable.Load(Command.ExecuteReader());
var q=from row in MyDataTable.Cast<DataRow>()
let Date=row["expired"].ToString().Split('/').Select(x=>Convert.ToInt32(x)).ToArray()
where (new DateTime(date[2],date[0],date[1]))<=DateTime.Now select new {Name=row["Name"]};

کامبیز اسدزاده
شنبه 06 مهر 1392, 13:45 عصر
آقا من هر کاری میکنم جواب نمیده !!!

این کد کوری من :


string query = "select expiredate,username from users where (expiredate<=@" + DateTime.Today.ToShortDateString() + ");";

using (MySqlCommand cmdSel = new MySqlCommand(query, dbConnect.connection))
{
// this.dbConnect.OpenConnection();
DataTable dt = new DataTable();
MySqlDataAdapter da = new MySqlDataAdapter(cmdSel);
da.Fill(dt);
Datagrid1.DataContext = dt;
Datagrid1.ItemsSource = dt.DefaultView;
ExColumns();

}


یه توضیحم بدم دلیل استفاده از DateTime.Today.ToShortDateString() تبدیل فرمت به صورت d/m/y هست به صورت : 9/26/2013

hamid_hr
شنبه 06 مهر 1392, 14:06 عصر
ببين نوع فيلد expiredate چي هست؟
varchar يا datetime?

کامبیز اسدزاده
شنبه 06 مهر 1392, 14:25 عصر
ببين نوع فيلد expiredate چي هست؟
varchar يا datetime?

mediumtext :D

hamid_hr
شنبه 06 مهر 1392, 14:30 عصر
خب بزار از نوع datettime اون مقايسه هايي كه دوستان زحمتشوكشيدن گذاشتن درست عمل ميكنه

کامبیز اسدزاده
شنبه 06 مهر 1392, 14:38 عصر
اهوههههه...

همه چیز بهم ریخت... : Unable to convert MySQL date/time value to System.DateTime

کنترل Datepicker هم از کار میفته اینجوری...

همه فیلدهای expiredate هم شد 0000-00-00 00:00:00 و بنده بدبخت شدم

کامبیز اسدزاده
شنبه 06 مهر 1392, 14:42 عصر
فکر کنم Datepicker فرمت d/m/y رو پشتیبانی میکنه و فرمت 0000-00-00 00:00:00 قابل پشتیبانی نیست برا همین خطا میده.

کدوم فرمت میتونه سازگار باشه به نظر شما ؟

Date خالی زدم 0000-00-00 شد...

بازم خطا میده

hamid_hr
شنبه 06 مهر 1392, 14:44 عصر
خب خودت تبديل كن به تاريخ بعد بريز داخل Datepicker

کامبیز اسدزاده
شنبه 06 مهر 1392, 14:48 عصر
مشکل اینه که Datepicker فرمت 0000-00-00 رو پشتیبانی نمیکنه فقط فرمت 00-00-0000 رو پشتیبانی میکنه !!!

درقت کنید چپ به راست شده !