2016-04-07 46 views
18

我想在SQL Server 2016使用JSON功能,但是當我嘗試執行OPENJSON功能,我得到以下錯誤:OPENJSON在SQL Server中不起作用?

Msg 208, Level 16, State 1, Line 1
Invalid object name 'openjson'.

爲什麼它不工作?我有SQL Server 2016 RC版本。

+1

你能後所有的SQL? –

+1

也選擇@@版本信息將有助於 – TheGameiswar

回答

55

你能檢查數據庫的兼容性級別嗎? OPENJSON是在兼容級別可用130你能嘗試執行:

ALTER DATABASE database_name SET COMPATIBILITY_LEVEL = 130 

另外,如果你是在Azure上的SQL數據庫使用JSON,注意,即使新的數據庫在120兼容級別創建的,所以你如果要改變它你想使用OPENJSON。 另外,如果您在Azure SQL數據庫中使用它,請運行select @@ version來查看此V12服務器。你應該看到:

Microsoft SQL Azure (RTM) - 12.0.2000.8 Mar 25 2016 15:11:30 Copyright (c) Microsoft Corporation

如果你看到一些低版本的(如11.xxx)你可能會對老建築數據庫,在那裏,不支持JSON。

問候,

約萬

+0

謝謝Jovan,這是由於兼容性水平。它適用於130. – Iva

+0

現在我的錯誤是「數據庫兼容級別的有效值是90,100或110」。 –

+0

您是否在談論Azure SQL數據庫或某些SQL Server版本? Azure SQL應具有所有兼容級別。 –

相關問題