Краткий ответ: нет.Длинный ответ: это зависит от ОС, и в настоящее время SQL Server не предлагает абстрагирования от правил DST, кроме очень простого sys.time_zone_info
.
. Вы можете получить информацию о часовом поясе и использовать специализированную клиентскую библиотеку, чтобы получить корректировкуправила..NET имеет TimeZoneInfo
, и вы можете использовать функцию CLR для отражения этой информации обратно в SQL Server.Также имеется поддержка сторонних производителей (отказ от ответственности: нет опыта).
В качестве альтернативы, 2016 предлагает AT TIME ZONE
для выполнения определенных расчетов, которые могут быть или не быть достаточнымидля ваших целей.Это не позволит вам точно определить предыдущее изменение, но позволит определить, действовал ли DST для какой-либо конкретной точки (сравнивая смещения часовых поясов с известной точкой).