Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

SQL Server 2012 :La version de SQL Server utilisée ne prend pas en charge le type de données 'datetime2'

Quel est le niveau de compatibilité de cette base de données que vous utilisez ?

Vérifier avec

SELECT compatibility_level 
FROM sys.databases 
WHERE name = 'YourDatabaseNameHere'

DATETIME2 a été introduit dans SQL Server 2008 - donc si ce niveau est inférieur à 100 (qui est SQL Server 2008), alors le DATETIME2 le type de données n'est pas encore disponible.

Si la base de données a été mise à niveau à partir d'une instance SQL Server 2005, il est fort probable que son niveau de compatibilité soit toujours à 90 (SQL Server 2005) et donc le DATETIME2 le type de données n'est pas encore disponible.

Vous pouvez mettre à niveau votre niveau de compatibilité de base de données vers des valeurs plus récentes en utilisant :

ALTER DATABASE YourDatabaseNameHere
SET COMPATIBILITY_LEVEL = 100;

level = 100 est SQL Server 2008 / 2008 R2, et level = 110 est SQL Server 2012