我想在SQL Server 2016中使用JSON函数,但是当我尝试执行OPENJSON
函数时,我收到以下错误:
Msg 208,Level 16,State 1,Line 1
无效的对象名称'openjson'。
为什么它不起作用?我有SQL Server 2016 RC版本。
答案 0 :(得分:68)
您可以检查数据库的兼容级别吗? OPENJSON在兼容级别130下可用。您可以尝试执行:
HoldemTask
此外,如果您在Azure SQL数据库上使用JSON,请注意,即使是新的数据库也是在120兼容级别下创建的,因此如果要使用OPENJSON,则应更改它。 此外,如果您在Azure SQL数据库中使用它,请运行select @@ version以查看此V12服务器。你应该看到类似的东西:
Microsoft SQL Azure(RTM) - 12.0.2000.8 2016年3月25日15:11:30 版权所有(c)Microsoft Corporation
如果你看到一些较低版本(例如11.xxx),你可能在旧架构上有数据库,而不支持JSON。
此致
约万