2016-04-07 16 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

データベースの互換性レベルを確認できますか?あなたはAzureのSQLデータベースにJSONを使用している場合は、

ALTER DATABASE database_name SET COMPATIBILITY_LEVEL = 130 

をもあれば、あなたがそれを変更する必要がありますのででも、新しいデータベースが120互換性レベルの下に作成されることに注意してください:OPENJSONは130を使用して、実行しようとすることができ、互換性レベルの下で提供されていますあなたはOPENJSONを使いたいです。 また、Azure SQLデータベースで使用している場合は、select @@ versionを実行して、このV12サーバーを確認してください。あなたには、いくつかの下位バージョン(例えば11.xxx)を参照してください場合は、おそらくJSONがサポートされていない古いアーキテクチャ上のデータベースを持っている

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

:あなたは次のように表示されるはずです。

よろしく、

ジョーバン

+0

ありがとうございましたJovan、それは互換性レベルのためでした。それは130で動作します – Iva

+0

私のエラーは "データベースの互換性レベルの有効な値は90,100、または110です"です。 –

+0

Azure SQLデータベースまたはSQL Serverのバージョンについてお話ししていますか? Azure SQLには、すべての互換性レベルが用意されている必要があります。 –

関連する問題