Первое, что явно неверно, это то, что вы используете строку для запроса столбца Date. Это никогда не правильно, потому что строка - это то, что вы используете для отображения даты для ваших конечных пользователей. Это не то, как база данных (или .NET) хранит значение даты. Таким образом, столбец Date не запрашивается с использованием строки, а передает непосредственно значение C # DateTime в методе Add и указывает DataType параметра.
Вторая возможная ошибка вызвана тем фактом, что если вы также сохранили часть времени, то передача даты, такой как сегодня, никогда не будет совпадать ни с одной строкой, а только с теми, которые имеют значение времени 00:00:00.
Вам необходимо запросить> = полночь даты начала и <следующего дня. </p>
Это соображение даст запрос, подобный этому:
With cmd
.Connection = conn
.CommandText = "SELECT SUM(Total_Amount) AS Total_Amount
FROM tblOrder
WHERE (cashier=@cashier) AND
(Order_date >= @StartDate AND
Order_date < @EndDate)"
.Parameters.Add("@cashier", SqlDbType.NVarChar).Value = lbl_Cashier_Name.Text
.Parameters.Add("@StartDate", SqlDbType.DateTime).Value = Date.Today
.Parameters.Add("@EndDate", SqlDbType.DateTime).Value = Date.Today.AddDays(1)
End With