Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Съхраняване на високосна секунда в SQL Server 2008

Не можете, защото SQL получава времето от Windows, а Windows също не поддържа високосни секунди.

Windows прилага високосни секунди, като взема новото време от сървъра за време нагоре по веригата и прилага обичайните корекции, сякаш е просто отклонение на часовника .

Обикновено това означава коригиране на всяка секунда с няколко наносекунди за продължителен период от време. За 24 часа ще работи с около една милисекунда в минута.

По принцип повечето приложения просто се преструват, че няма такова нещо като високосни секунди.

За повечето цели това няма значение. Ако имате приложение, където това има значение, операционната система няма да ви помогне. Ще ви е необходим и специален хардуер за проследяване на времето, тъй като операционните системи обикновено имат проблеми с поддържането на времето до секунда. Windows по подразбиране синхронизира времето всяка седмица или по-рядко и повечето евтини хардуерни часовници за персонални компютри (или дори тези в скъпи сървъри) могат лесно да се отклонят с няколко секунди в това време.

Тъй като ви интересува точното време, предполагам, че сте посочили pool.ntp.org или вашата регионална подмрежа и сте задали w32time за синхронизиране няколко пъти на ден.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Изключване на дялове на таблици в SQL Server:Походно ръководство

  2. Не можете да получите резултата от съхранената процедура в променлива?

  3. Грешка при влизане в SQL Server

  4. Поведение на SQL Server ROW_NUMBER

  5. Поправете „Грешка при аритметично препълване при преобразуване на израз в тип данни int“ в SQL Server