1

我有一个 WPF 应用程序,其中一个字段有一个用于电话通话长度的数字输入框,称为 ActivityDuration。

以前,这已保存为表示分钟的整数值。但是,客户现在希望使用同一张表记录会议,但会议可以持续 4-5 小时,因此输入 240 分钟似乎对用户不太友好。

我目前正在考虑我的选择,是否将 ActivityDuration 更改为 SQL 2008 中的时间值并尝试使用时间掩码输入框,或者将其保留为整数并向客户端提供 2 个数字输入框,一个用于小时,一个用于分钟,然后进行计算以在 SQL Server 2008 中将其保存为整数分钟。

我愿意接受意见和建议。另一个考虑因素是我需要能够根据 ActivityDuration 计算总时间,因此字段 DataType 应该允许它轻松地求和。

4

2 回答 2

0

新的时间数据类型仅支持 24 小时,因此如果您需要更多时间,则必须使用日期时间。因此,如果总计 7 x 4 小时的会议,您将获得“4 小时”的回报

数据库存储它的方式也与您呈现和捕获数据的方式不同。

为什么不在客户端显示和转换 hh:nn 类型并存储为日期时间?

于 2010-01-30T22:13:25.897 回答
0

跟踪开始和结束时间,无需掩盖日期,因为持续时间只是两个日期的计算。您甚至可以在“会话”中执行此操作,这样一个会议可以有多个会话(即一个跨越午餐时间的会议,不应该计入持续时间......)。

数据类型是 datetime 或 smalldatetime。

然后要获得“总持续时间”,它只是一个使用查询

Select sum(datediff(mm, startdate, enddate)) from table where meetingID = 1
于 2010-01-30T16:57:29.687 回答