【发布时间】:2016-09-01 08:53:56
【问题描述】:
这是我在 VB.Net 的调试模式下得到的 SQL 语句。
SELECT dt_Date as 'Date',
s_Time as 'Time',
s_For as 'For',
s_Categ as 'Category',
s_Count as 'Count',
s_Remarks as 'Remarks'
FROM Entry
WHERE (s_ENo = '22' and dt_date BETWEEN '06-05-16' And '27-05-16')
我不确定上述陈述有什么问题,因为在我看来一切都很好。
错误信息说明
附加信息:转换日期时转换失败和/或 字符串的时间。
有什么解开这个谜题的建议吗?
【问题讨论】:
-
使用 ISO-8601 日期:
20160506和20160527。YYYYMMDD格式与文化/语言无关。 -
@lad2025,不确定如何使用它以及它对我的查询有何帮助,因为大多数查询都依赖于日期。
-
只需将
'06-05-16'替换为'20160506' -
DateTimePicker1.Value.ToShortDateString 这是在 SQL 查询中到达日期的语法
-
正如 Dan 建议的那样,首先不要将您的
DateTime值 转换为 字符串,然后强制 SQL Server 必须将它们转换回 @987654328 @ 值,您将避免这些转换问题。
标签: mysql sql sql-server vb.net visual-studio