Dim sql As String = "SELECT * FROM old where inputdate BETWEEN '" + DateTimePicker2.Value.ToShortDateString() + "' AND '" + DateTimePicker3.Value.ToShortDateString() + "';"
Dim dataadapter As New SqlDataAdapter(sql, connection)
Dim ds As New DataSet()
connection.Open()
dataadapter.Fill(ds, "old_table")
connection.Close()
У меня есть 2 DateTimePickers формата Short. В SQL имя столбца «inputdate» DataType: date. Когда я выбираю даты с днями < = 12, все работает нормально. Когда я выбираю даты с днями> 12, у меня возникает эта ошибка. Я вижу, что это вопрос дня и месяца, но я все еще не могу решить проблему. Любая помощь будет очень ценна "Конверсия удалось при преобразовании даты и/или времени из строки символовПреобразование даты в строку с DateTimePicker
Когда вы говорите, что он работает с днями менее 12, вы не имеете в виду ошибок, или вы имеете в виду, что он правильно возвращает данные в этом диапазоне ?. Если SQL использует дни в течение нескольких месяцев, ваш результат не будет правильным результатом. – Crowcoder
Я думаю, что у вас есть проблема с культурой. SQL-сервер может использовать результат 'ToShortDateString', но культура настроена на единицу, которая меняет месяцы и дни. У Абделлы есть хороший совет. – Crowcoder
Что вы получаете, когда запускаете этот запрос в своей базе данных? 'select @@ LANGUAGE' – Crowcoder