Nie możesz, ponieważ SQL pobiera czas z Windows, a Windows również nie obsługuje sekund przestępnych.
System Windows stosuje sekundy przestępne, pobierając nowy czas z serwera czasu nadrzędnego i stosując zwykłe korekty tak, jakby były proste dryf zegara .
Zwykle oznacza to dostosowywanie każdej sekundy o kilka nanosekund przez dłuższy czas. W ciągu 24 godzin działałoby to z prędkością około jednej milisekundy na minutę.
- Jak usługa Czas systemu Windows traktuje sekundę przestępną:http://support.microsoft.com/ kb/909614
- Czy struktura FILETIME systemu Windows zawiera sekundy przestępne?
- Jak działa usługa czasu systemu Windows: http://technet.microsoft.com/en-us/library/cc773013(v=ws.10).aspx
Zasadniczo większość aplikacji po prostu udaje, że nie ma czegoś takiego jak sekundy przestępne.
W większości przypadków nie ma to znaczenia. Jeśli masz aplikację, w której ma to znaczenie, system operacyjny ci nie pomoże. Będziesz także potrzebował specjalnego sprzętu do śledzenia czasu, ponieważ systemy operacyjne i tak mają problem z utrzymaniem czasu w ciągu sekundy. Windows domyślnie synchronizuje czas co tydzień lub rzadziej, a większość tanich zegarów sprzętowych PC (lub nawet tych w drogich serwerach) może z łatwością przesuwać się o kilka sekund w tym czasie.
Ponieważ zależy Ci na dokładnym czasie, zakładam, że wskazujesz na pool.ntp.org lub swoją regionalną podsieć i kilka razy dziennie ustawiłeś w32time do synchronizacji.