LoslegenKostenlos loslegen

Datum und Uhrzeit mit Offsets aus Bestandteilen aufbauen

Die Funktion DATETIMEOFFSETFROMPARTS() setzt aus Komponentenwerten einen DATETIMEOFFSET zusammen. Sie hat die meisten Eingabeparameter aller Funktionen zum Erstellen von Datum und Uhrzeit.

Am 19. Januar 2038 um 03:14:08 UTC (also 3:14:08 Uhr morgens) tritt das Year-2038-Problem (auch Y2.038K) auf. In diesem Moment springen 32‑Bit‑Geräte auf das Datum 1900-01-01 zurück. Das birgt das Risiko, jedes 32‑Bit‑Gerät zu beeinträchtigen, das POSIX‑Zeit verwendet, also die Anzahl der Sekunden seit dem 1. Januar 1970 um Mitternacht UTC.

Diese Übung ist Teil des Kurses

Zeitreihenanalyse in SQL Server

Kurs anzeigen

Anleitung zur Übung

  • Erstelle einen DATETIMEOFFSET, der die letzte Millisekunde darstellt, bevor das Y2.038K‑Problem eintritt. Der Offset soll UTC sein.
  • Erstelle einen DATETIMEOFFSET, der den Moment darstellt, in dem Geräte das Y2.038K‑Problem in UTC‑Zeit treffen. Verwende dann den Operator AT TIME ZONE, um dies in Eastern Standard Time zu konvertieren.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

SELECT
	-- Fill in the millisecond PRIOR TO chaos
	DATETIMEOFFSETFROMPARTS(2038, ___, ___, ___, ___, 07, 999, 0, 0, 3) AS LastMoment,
    -- Fill in the date and time when we will experience the Y2.038K problem
    -- Then convert to the Eastern Standard Time time zone
	DATETIMEOFFSETFROMPARTS(2038, ___, ___, ___, ___, 08, 0, 0, 0, 3) AT TIME ZONE '___ ___ ___' AS TimeForChaos;
Code bearbeiten und ausführen