2

我将签入时间和签出时间存储在 SQL Server 2008 的表中。

当我存储它正确显示的时间时:16:00:00例如。

但是,当我将其从数据库中拉出并将其绑定到页面以向用户显示时,格式显示为16:00:00.0000000

所以精度显然是精确的,但我不需要为此目的。

我已经尝试过FormatDateTime,但这不起作用(显然)并且Time在 Google 上找不到任何适用于 Classic ASP 和 SQL Server 2008 数据类型的内容。

<%=(rsHotelFields.Item("checkintime").Value)%>

有关如何更改上述内容的任何想法?

谢谢尼克

4

1 回答 1

3

默认情况下,如果您在 SQL Server 2008 中将列定义为 datatype TIME,它将使用可能的最大精度 - 小数秒为 7 位,精确到 100ns。

这很好 - 但如果您不需要那种准确性,您可以将您的列定义为:

YourColumn TIME(0)

然后将不存储小数秒,16:04:44并且还将再次从要显示的数据库表中检索相同的值。

使用TIME(0)还将列的存储大小从 5 个字节减少到 3 个字节。

在 MSDN 上阅读有关 SQL Server 2008 和更新版本的日期和时间数据类型的更多信息。

于 2013-02-17T10:21:23.680 回答