Qual é o nível de compatibilidade desse banco de dados que você está executando?
Verifique usando
SELECT compatibility_level
FROM sys.databases
WHERE name = 'YourDatabaseNameHere'
DATETIME2
foi introduzido no SQL Server 2008 - então, se esse nível estiver abaixo de 100 (que é o SQL Server 2008), então o DATETIME2
tipo de dados ainda não está disponível. Se o banco de dados foi atualizado de uma instância do SQL Server 2005, provavelmente, seu nível de compatibilidade ainda está em 90 (SQL Server 2005) e, portanto, o
DATETIME2
tipo de dados ainda não está disponível. Você pode atualizar seu nível de compatibilidade de banco de dados para valores mais recentes usando:
ALTER DATABASE YourDatabaseNameHere
SET COMPATIBILITY_LEVEL = 100;
onde
level = 100
é SQL Server 2008/2008 R2 e level = 110
é SQL Server 2012