Ve skutečnosti je to velmi konzistentní. DATETIME
je typ zděděný z předchozích vydání sql serveru. Od vydání z roku 2008, DATETIME2
byla zavedena a odstraněna možnost sčítání/odečítání celých čísel. Stále to můžete udělat DATETIME
jako dědictví.
DATE
, například DATETIME2
existuje také od roku 2008 a u tohoto typu je také zakázáno sčítat/odečítat čísla.
Zobrazí se chyba:
DECLARE @Yesterday DATETIME2 = GETDATE();
SELECT @Yesterday-1;
Takže vše v pořádku :).