Jaki jest poziom zgodności tej bazy danych, z którą walczysz?
Sprawdź za pomocą
SELECT compatibility_level
FROM sys.databases
WHERE name = 'YourDatabaseNameHere'
DATETIME2
został wprowadzony w SQL Server 2008 - więc jeśli ten poziom jest poniżej 100 (czyli SQL Server 2008), to DATETIME2
typ danych nie jest jeszcze dostępny.
Jeśli baza danych została uaktualniona z instancji SQL Server 2005, najprawdopodobniej jej poziom zgodności nadal wynosi 90 (SQL Server 2005), a zatem DATETIME2
typ danych nie jest jeszcze dostępny.
Możesz uaktualnić poziom zgodności bazy danych do nowszych wartości, używając:
ALTER DATABASE YourDatabaseNameHere
SET COMPATIBILITY_LEVEL = 100;
gdzie level = 100
to SQL Server 2008/2008 R2 i level = 110
to SQL Server 2012