我需要一个日期插入到数据库中,但即使我使用
格式化它Exportedtime = DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss")
它仍然显示为3/24/2016 09:25:13 AM?因此,当我将其插入MSSQL数据库时,我得到错误:
The conversion of a varchar data type to a datetime data type resulted in an out-of-range value.
数据库字段是日期时间字段。
有什么想法吗?
由于
答案 0 :(得分:0)
大家好,感谢您的帮助。 @Alexb提供了我需要执行的提示。
con = New SqlConnection(constring)
con.Open()
Dim cmd As New SqlCommand("Update Scripts set ExportedOn = @exportTime where scriptID = " & scriptID, con)
cmd.CommandType = CommandType.Text
cmd.Parameters.Add("@exportTime", SqlDbType.DateTime).Value = time
cmd.ExecuteNonQuery()
con.Close()
感谢您的帮助。
答案 1 :(得分:-1)
我在应用程序中也遇到了这种格式问题。在对MSSQL中的日期时间格式进行详细研究之后,我想出了这个解决方案。
"CONVERT(datetime,'" + DateTime.Now.ToString("yyyyMMdd HH:mm:ss") + "',112)"
使用上面的字符串插入日期时间值。
在此处阅读有关转换功能的更多信息 - https://msdn.microsoft.com/en-in/library/ms187928.aspx
答案 2 :(得分:-2)
这是你可以得到的简单方法:)
Dim d As String = "10/05/2016 14:30:06"
MsgBox(CDate(d).ToString("yyyy/MM/dd HH:mm:ss"))