sql >> Database >  >> RDS >> Sqlserver

Een schrikkelseconde opslaan in SQL Server 2008

Dat kan niet, omdat SQL de tijd van Windows krijgt en Windows ook geen schrikkelseconden ondersteunt.

Windows past schrikkelseconden toe door de nieuwe tijd van de upstream-tijdserver te nemen en de gebruikelijke aanpassingen toe te passen alsof het eenvoudig is klokafwijking .

Meestal betekent dit dat elke seconde gedurende een langere periode met een paar nanoseconden moet worden aangepast. Over 24 uur zou het uitkomen op ongeveer één milliseconde per minuut.

Kortom, de meeste toepassingen doen alsof er niet zoiets bestaat als schrikkelseconden.

Voor de meeste doeleinden maakt dit niet uit. Als u een toepassing heeft waarbij dit van belang is, zal het besturingssysteem u niet helpen. Je hebt ook wat speciale hardware nodig om de tijd bij te houden, aangezien besturingssystemen over het algemeen toch al moeite hebben om de tijd binnen een seconde bij te houden. Windows synchroniseert de tijd standaard wekelijks of minder vaak, en de meeste goedkope pc-hardwareklokken (of zelfs die op dure servers) kunnen in die tijd gemakkelijk enkele seconden afwijken.

Aangezien u de exacte tijd belangrijk vindt, neem ik aan dat u naar pool.ntp.org of uw regionale subnet verwijst en w32time meerdere keren per dag voor synchronisatie hebt ingesteld.




  1. Converteer latin1-tekens op een UTF8-tabel naar UTF8

  2. proberen om gegevens te decoderen (abs exporteren naar MySQL)

  3. Entity Framework Oracle-tijdstempel

  4. trek 2 datetime af in mysql (één in 24-uurs formaat en één in am/pm formaat)