Сохранение дополнительной секунды в SQL Server 2008

Эти выходные будут очень длинными, так как 30 июня после 23:59:59будет добавлена ​​дополнительная секунда .

У нас есть система, которая круглосуточно регистрирует множество данных, и одно из бизнес-правил заключается в том, что никакие две записи не могут быть зарегистрированы как произошедшие одновременно с точностью до одной секунды.

Мы используем дату и время в формате UTC вместе с новымdatetimeoffsetтип данных, но, насколько я могу судить, они не позволят вам иметь более 60 секунд в минуту.

Конечно, это выдает ошибку:

select datediff(ss, getdate(), '30-jun-2012 23:59:60')

Но, по словам богов UTC, это будет реальное время. События могут происходить в 23:59:60, но у нас нет возможности зафиксировать этот факт.

23:59:59смещение плюс одна секунда по-прежнему будет считаться 00:00:001 июля.

Как я могу правильно зарегистрировать, что событие произошло в 23:59:60в базе данных?

12
задан marc_s 29 June 2012 в 11:46
поделиться