【发布时间】:2010-03-22 09:49:33
【问题描述】:
我在SQL Server 2008 下创建了小型数据库。现在我想把它移到SQL Server 2005 并且它不起作用,因为它没有Time 数据类型。我必须在 SQL Server 2005 中仅存储时间的选项。我编写了小型 TimeSheet 应用程序,它需要以 05:30:00 (hh:mm:ss) 等格式写入小时和分钟,但 ss 是可选的。
【问题讨论】:
-
谢谢。我必须修复 C# 应用程序以改用
DateTime或安装我不喜欢的 SQL Express。 -
我很好奇你为什么只想要时间。如果您需要时间之间的差异,您可以存储整个日期和时间并使用 Timespan 函数。也许这不是您想要的,但我不知道您要做什么。
-
我存储了大约 3 小时 30 分钟。我不需要日期,因为用户不应该输入 StartTime 和 EndTime,而只是他在一天中花费的时间(我已将日期存储在不同的字段中)。然后我可以在 Time 上使用
SUM()(不是真正的 SUM,而是我自己用 SQL 制作的)。 -
希望这将告诉您为什么在与生产版本不同的数据库版本中进行开发是一种糟糕的做法。您应该使用 prod 中所需的最低版本进行开发。
-
到目前为止,我的其他应用程序(即 100k 行)没有出现这个问题。这是一个简单的 2 天代码,所以不是什么大问题。没想到 SQL 2005 中缺少这个小功能:-)
标签: sql-server-2005 sql-server-2008 types