2016-09-03 19 views
0

即使我從兩個不同日期但設置了同一年(2016年)設置我的兩個datetimepickers,但我的datagridview會在2015年顯示日期。延續關於在兩個日期之間獲取日期

我的繼承人代碼..

public static List<Retailer> GetDataAllRetailer(DateTime past, DateTime present) 
     { 
     List<Retailer> data = new List<Retailer>(); 

     MySqlConnection con = DBConnection.ConnectDatabase(); 
     try 
     { // AND 
      MySqlCommand cmd = new MySqlCommand("SELECT * FROM " + tablename + " WHERE (date BETWEEN '" + past.ToString("MM-dd-yyyy") + "' AND '" + present.ToString("MM-dd-yyyy") + "') ", con); 

      MySqlDataReader reader = cmd.ExecuteReader(); 

      if (reader.HasRows) 
      { 
       while (reader.Read()) 
       { 
        Retailer rawData = new Retailer(); 
        rawData.Date = reader.GetString(1); 
        rawData.Walletid = reader.GetString(0); 
        rawData.Fname = reader.GetString(2); 
        rawData.Lname = reader.GetString(3); 
        rawData.Birthdate = reader.GetString(4); 
        rawData.Address = reader.GetString(5); 
        rawData.Province = reader.GetString(6); 
        rawData.City = reader.GetString(7); 
        rawData.Balance = reader.GetDouble(8); 
        rawData.Frozen = reader.GetDouble(9); 
        rawData.Sponsor_id = reader.GetString(10); 
        rawData.Share = reader.GetDecimal(11); 
        rawData.Email = reader.GetString(12); 
        rawData.Password = reader.GetString(13); 
        rawData.Type = reader.GetInt32(14); 
        data.Add(rawData); 


       } 
      } 



      reader.Close(); 

     } 
     catch (Exception ex) 
     { 
      MessageBox.Show(ex.Message); 
     } 
     finally 
     { 
      con.Close(); 
     } 

     return data; 
    } 

} 

datagrid

+0

您是否檢查日期時間值是否正確傳輸到方法? – rbr94

+0

如果你將數字和日期作爲字符串存儲,他們不會像數字和日期 – Plutonix

+0

是的先生..這有相同的方法,如果我點擊零售商,分銷商和經銷商單選按鈕和它的工作正常。但是,當我選擇所有單選按鈕,它將包括2015年 –

回答

1

如果表列是VARCHAR,那麼我建議你將其轉換爲日期適當地做搜索如下:

SELECT * FROM Table WHERE 
CONVERT(DATE, FromDate) >= CONVERT(DATE, '2016-09-03') 
AND CONVERT(DATE, ToDate) <= CONVERT(DATE, '2016-09-13') 
相關問題