Mức độ tương thích là gì của cơ sở dữ liệu mà bạn đang chống lại?
Kiểm tra bằng cách sử dụng
SELECT compatibility_level
FROM sys.databases
WHERE name = 'YourDatabaseNameHere'
DATETIME2
đã được giới thiệu trong SQL Server 2008 - vì vậy nếu mức đó dưới 100 (là SQL Server 2008), thì DATETIME2
loại dữ liệu chưa có sẵn.
Nếu cơ sở dữ liệu được nâng cấp từ phiên bản SQL Server 2005, rất có thể, mức độ tương thích của nó vẫn ở mức 90 (SQL Server 2005) và do đó DATETIME2
loại dữ liệu chưa khả dụng.
Bạn có thể nâng cấp mức độ tương thích cơ sở dữ liệu của mình lên các giá trị mới hơn bằng cách sử dụng:
ALTER DATABASE YourDatabaseNameHere
SET COMPATIBILITY_LEVEL = 100;
trong đó level = 100
là SQL Server 2008/2008 R2 và level = 110
là SQL Server 2012