这似乎很明显,但我如何将DateTime对象放入MSSQL数据库?当我将其转换为字符串时,它会在末尾不断添加"-7:00"作为时区偏移量,因此查询不被接受。我该怎么解决这个问题?
如何将DateTime
插入数据库?如果要将其转换为要传递到存储过程中的字符串(这是个坏主意;最好使用日期SQL类型),则应首先使用.net方法ToUniversalTime
将所有DateTime
对象转换为UTC。一旦进入UTC,DateTime
将没有时区偏移。
假设您使用的是C#,我建议如下:
SqlCommand cmd = new SqlCommand("INSERT INTO yourTable (dateTimeColumn) VALUES (@value)", connection);
cmd.Parameters.AddWithValue("@value", yourDateTimeObject);
cmd.ExecuteNonQuery();
这将适用于插入值。如果没有,请发布您的代码以显示错误的位置,因为这意味着您从中获取值的日期时间对象传递的数据是错误的。