将DateTime值插入数据库?

时间:2011-05-28 22:16:38

标签: asp.net sql sql-server datetime

这看起来应该是非常明显的,但是如何将DateTime对象放入MSSQL数据库?当我将其转换为字符串时,它会在末尾为时区偏移添加“-7:00”,因此不接受查询。我该如何解决这个问题?

2 个答案:

答案 0 :(得分:1)

您是如何尝试将DateTime插入数据库的?如果您要将其转换为要传递给存储过程的字符串(不好主意;最好使用日期SQL类型),那么您应该首先使用.net方法将DateTime对象转换为UTC {{ 1}}。在UTC中,ToUniversalTime将没有时区偏移。

答案 1 :(得分:1)

假设您使用的是C#,我建议如下:

SqlCommand cmd = new SqlCommand("INSERT INTO yourTable (dateTimeColumn) VALUES (@value)", connection);
cmd.Parameters.AddWithValue("@value", yourDateTimeObject);

cmd.ExecuteNonQuery();

这将用于插入值。如果没有,请发布您的代码以显示错误的位置,因为这意味着您从中获取值的日期时间对象传递的数据是错误的。