我有一个使用SqlParameter将datetime插入到列的SqlCommand。目前,我使用DateTime.Now作为此参数的值。
我相信这会在用户的PC上添加日期时间,这是不一致的。
如何更改它,以便插入数据库服务器的日期时间?
编辑:
我应该说清楚这只是用来插入的
发布于 2009-08-31 10:54:35
这是严格针对插入的吗?或者也是为了更新?
如果它仅用于插入,则可以在SQL Server端的DATETIME列上声明一个default约束,然后不从客户端插入值-从而使用服务器的默认值。
在SQL中:
ALTER TABLE YourTable
ADD CONSTRAINT DF_YourTable_YourColumn
DEFAULT (GETDATE()) FOR YourColumn然后,在SQL命令中,只需不要提及"YourColumn“,也不要为它提供值-服务器将使用getdate()来获取服务器上的当前日期/时间。
Marc
发布于 2009-08-31 10:53:50
不要传入当前日期的参数;让SQL Server来生成它。
执行您所描述的操作的SQL是GETDATE(),尽管您可能想要考虑使用GETUTCDATE(),因为它在时区更改(和移动服务器!)方面的表现会更好。
有关更多详细信息,请参阅MSDN。
发布于 2009-08-31 10:50:07
http://doc.ddart.net/mssql/sql70/ga-gz_1.htm
https://stackoverflow.com/questions/1356879
复制相似问题