как выбрать данные между двумя диапазонами дат из базы данных доступа ms? - PullRequest
0 голосов
/ 01 августа 2020

Я пытаюсь выбрать свои данные из доступа, но у меня проблема с моим запросом datePlacingOrdermin это DateTime и формат в моем доступе (dd / MM / yyyy HH: mm: ss) спасибо всем за помощь.

public Order[] SelectOrders(string valueToSearch,DateTime datePlacingOrdermin, DateTime datePlacingOrderMax)
{
   DataSet ds = new DataSet();
   ArrayList orders = new ArrayList();
   string cmdStr = "SELECT * FROM Orders WHERE " +
   "(ClientId + ' ' + ClientName + ' ' + ClientLastName + ' ' + ProductId + ' ' + 
   ProductName like '%" + valueToSearch + "%') ' AND ' [Dateplacingorder] BETWEEN '" +
   datePlacingOrdermin.ToString()+"' AND '"+ datePlacingOrderMax.ToString()+"'"; 
   using (OleDbCommand command = new OleDbCommand(cmdStr))
   {
     ds = GetMultipleQuery(command);
   } 
   DataTable dt = new DataTable();
   try
   {
     dt = ds.Tables[0];
   }
   catch { }
   foreach (DataRow tOrder in dt.Rows)
   {
     Order orderData = new Order();
     orderData.Id = Convert.ToInt32(tOrder[0].ToString());
     orderData.ClientId = tOrder[1].ToString();
     orderData.ClientName = tOrder[2].ToString();
     orderData.ClientLastName = tOrder[3].ToString();
     orderData.ProductId = tOrder[4].ToString();
     orderData.ProductName = tOrder[5].ToString();
     orderData.ProductPrice = Convert.ToDouble(tOrder[6].ToString());
     orderData.ProductCount = Convert.ToInt32(tOrder[7].ToString());
     orderData.TotalPrice = Convert.ToDouble(tOrder[8].ToString());
     orderData.DatePlacingOrder = tOrder[9].ToString();
     orders.Add(orderData);
   }
     return (Order[])orders.ToArray(typeof(Order));
}

1 Ответ

0 голосов
/ 03 августа 2020

Теперь проблема решена, и я не знаю, как ... Я просто поменял местами yyyy и dd

это мой фиксированный код.

string cmdStr = "SELECT * FROM Orders WHERE [Dateplacingorder] BETWEEN #" +
            datePlacingOrdermin.ToString("yyyy-MM-dd HH:mm:ss") + "# AND #" + datePlacingOrderMax.ToString("yyyy-MM-dd HH:mm:ss") + "#";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...