我在尝试将参数插入派生表时遇到问题,该派生表是 vb.net 应用程序中我的表适配器填充查询的一部分。
当我尝试通过数据集设计器的预览窗口或在我的应用程序中使用 datatableadapter.fill 方法在 vb.net 中使用查询时,我收到“从字符串转换日期和/或时间时转换失败”。
SELECT Date, SUM(RegHours) AS RegTotal, SUM(OTHours) AS OTTotal, SUM(VacHours) AS VacTotal, SUM(SickHours) AS SickTotal
FROM (SELECT EmployeeId, Date, RegHours, OTHours, (CASE WHEN TaskId=4 THEN RegHours ELSE NULL END) AS VacHours, (CASE WHEN TaskId=5 THEN RegHours ELSE NULL END) AS SickHours FROM TimeEntry
WHERE (EmployeeId=@EmployeeId) AND (Date>=@StartDate)) AS SubTable
GROUP BY Date
当我只有 @EmployeeId 参数时,查询可以完美运行,所以问题在于日期转换。
如果我只执行派生表部分,查询也可以正常工作:
SELECT EmployeeId, Date, RegHours, OTHours, (CASE WHEN TaskId=4 THEN RegHours ELSE NULL END) AS VacHours, (CASE WHEN TaskId=5 THEN RegHours ELSE NULL END) AS SickHours
FROM TimeEntry
WHERE (EmployeeId=@EmployeeId) AND (Date>=@StartDate)
任何帮助将不胜感激!