В базе данных я бы создал целое поле, которое содержит количество минут. Тогда пользовательский интерфейс должен будет конвертировать в целое поле и из него.
Но
1)
подсчет общего времени будет намного быстрее (такие вопросы, как дать мне общее время, потраченное на x, среднее время на y).
2)
Требования к дисковому пространству снизятся. Если таблицы содержат менее миллиарда строк, это не имеет большого значения.
Что произойдет, если вы захотите сохранить секунды, в какой-то момент в будущем?
Если вы используете SQL Server 2008 или выше, вы также можете использовать новый тип данных TIME, как в
DECLARE myTime TIME(0)
или
CREATE TABLE #T
( TableID INT IDENTITY(1,1)
, StartTime TIME(0)
)
INSERT INTO #t (StartTime) VALUES ('12:04:59')
SELECT top 10000 * FROM #t