0
以我SQL存储过程:将数据类型datetime转换为smalldatetime的SQL错误?
@StartDate as smalldatetime,
@EndDate as smalldatetime
以我的C#代码:
StartDate = new DateTime(1901,01,01,00,00,00);
EndDate = new DateTime(2200,01,01,00,00,00);
var StartDate2 = StartDate.ToString("dd/MM/yyyy HH:mm:ss");
StartDate2 = DateTime.ParseExact(StartDate2, "dd/MM/yyyy HH:mm:ss", CultureInfo.InvariantCulture).ToString("dd/MM/yyyy HH:mm:ss");
StartDate = Convert.ToDateTime(StartDate2);
var EndDate2 = EndDate.ToString("dd/MM/yyyy HH:mm:ss");
EndDate2 = DateTime.ParseExact(EndDate2, "dd/MM/yyyy HH:mm:ss", CultureInfo.InvariantCulture).ToString("dd/MM/yyyy HH:mm:ss");
EndDate = Convert.ToDateTime(EndDate2);
列是如在分贝一个SMALLDATETIME类型。我正在围绕着这个圈子走!什么是正确的方式来解析我的日期正确的格式查询数据库?
更新: 已更改的代码,并工作正常。
SqlParameter parameter = daHoliday.SelectCommand.Parameters.Add("@StartDate", System.Data.SqlDbType.SmallDateTime);
SqlParameter parameter2 = daHoliday.SelectCommand.Parameters.Add("@EndDate", System.Data.SqlDbType.SmallDateTime);
parameter.Value = StartDate;
parameter2.Value = EndDate;
不要将它们转换为字符串,只需通过命令参数将它们作为'DateTime'类型对象传递即可。 – user2711965
这样做,谢谢!更新代码以反映! – PeteTheGreek
请只回答你自己的问题,然后在两天内你可以接受它。它将清理此问题的工作流程。 –