OPENJSON не работает в SQL Server?

Я хочу использовать функции JSON в SQL Server 2016, но когда я пытаюсь выполнить , Я получаю следующую ошибку:

Msg 208, Уровень 16, Состояние 1, Строка 1
Недопустимое имя объекта "openjson".

почему это не работает? У меня есть версия SQL Server 2016 RC.

1 ответов


не могли бы вы проверить уровень совместимости базы данных? OPENJSON доступен под уровнем совместимости 130. Не могли бы вы попробовать выполнить:

ALTER DATABASE database_name SET COMPATIBILITY_LEVEL = 130

кроме того, если вы используете JSON в базе данных SQL Azure, обратите внимание, что даже новые базы данных создаются на уровне совместимости 120, поэтому вы должны изменить его, если хотите использовать OPENJSON. Кроме того, если вы используете его в базе данных SQL Azure, запустите select @@version, чтобы увидеть этот сервер V12. Вы должны увидеть что-то вроде:

Microsoft SQL Azure (RTM) - 12.0.2000.8 25 марта 2016 15:11:30 Авторское право (c) Корпорация Майкрософт

Если вы видите более старую версию (например, 11.xxx) вероятно, у вас есть база данных по старой архитектуре, где JSON не поддерживается.

С уважением,

Йован