-2

在我的 ASP.NET (C#) 项目中,我将一些数据插入到数据库中。

INSERT INTO USERS (username,join_date) VALUES('Ali',GETDATE());

现在,当我从数据库中获取日期时,我正在使用DateTime

SqlDataReader r = Command.ExecuteReader();
r.Read();
myDate = r.getDateTime(0);

当我将它插入到某个 DIV 中时,我会这样做。

"<div>"+myDate.ToLongTimeString()+"</div>"

我得到了正确的日期,如day/month/year,但小时总是12:00:00 AM

我怎样才能得到准确的时间?

4

2 回答 2

7

确保 join_date 是 DATETIME 类型,而不是数据库中的 DATE

http://msdn.microsoft.com/en-us/library/ms186724.aspx

于 2013-01-12T22:46:19.303 回答
4

用作DATE列类型意味着您只存储日期而不是时间。

因此,当您将值读回DateTime对象时,系统必须将时间部分初始化为午夜。

将列转换为DATETIME,您还将获得存储的时间分量。

有关差异的更多信息,请参阅有关日期和时间数据类型和函数的 MSDN 页面

于 2013-01-12T22:49:14.263 回答