Какво е нивото на съвместимост на тази база данни, срещу която работите?
Проверете с помощта на
SELECT compatibility_level
FROM sys.databases
WHERE name = 'YourDatabaseNameHere'
DATETIME2
беше въведен в SQL Server 2008 - така че ако това ниво е под 100 (което е SQL Server 2008), тогава DATETIME2
типът данни все още не е наличен.
Ако базата данни е била надстроена от екземпляр на SQL Server 2005, най-вероятно нейното ниво на съвместимост все още е 90 (SQL Server 2005) и следователно DATETIME2
типът данни все още не е наличен.
Можете да надстроите нивото на съвместимост на вашата база данни до по-нови стойности, като използвате:
ALTER DATABASE YourDatabaseNameHere
SET COMPATIBILITY_LEVEL = 100;
където level = 100
е SQL Server 2008 / 2008 R2 и level = 110
е SQL Server 2012