我需要帮助在SQL Server中插入日期

时间:2018-01-26 22:07:04

标签: sql sql-server date

我正在努力以正确的格式从字符串中插入日期。我刚收到错误:

  

从字符串转换日期和/或时间时转换失败。

我的函数采用格式为dd/MM/yyyy

的值

如何使其成为插入SQL Server的正确格式?

private object StartDateChecker(String val)
{
    DateTime dt = DateTime.ParseExact(val, "dd/MM/yyyy", null);

    if (val == "") 
       return DBNull.Value;
    else
       val = dt.ToString("MM/dd/yyyy HH:mm:ss");

    return val;
}

2 个答案:

答案 0 :(得分:1)

将日期转换为格式'YYYYMMDD'。这将始终在SQL Server中工作。

或(我的偏好)将日期转换为'YYYY-MM-DD'。这几乎适用于所有国际化设置 - 而且我可以更轻松地阅读它。

答案 1 :(得分:0)

这是我如何使它工作:

    private object StartDateChecker(String val)
{
    DateTime dt;
    string input = val;
    int index = input.IndexOf(" ");
    if (index > 0)
        input = input.Substring(0, index);

    if (val == "") return DBNull.Value;
    else

       dt = DateTime.ParseExact(input, "dd/MM/yyyy", null); return dt;

}