JSON_VALUE в хранилище данных Azure Sql: «JSON_VALUE» не является распознанным именем встроенной функции - PullRequest
1 голос
/ 07 июня 2019

JSON_VALUE () не работает в хранилище данных SQL Azure, даже если уровень совместимости равен 130.

Несмотря на то, что для параметра compatibilitylity_level задано значение 130, кажется, что JSON_VALUE не может работать в хранилище данных SQL Azure.,ref: https://docs.microsoft.com/en-us/sql/t-sql/functions/json-functions-transact-sql?view=sql-server-2017

CREATE TABLE dbo.test (
    doc_name        VARCHAR(255) NOT NULL,
    code            VARCHAR(80) NOT NULL,
    currentState_id INT NULL,
    json_doc        NVARCHAR(MAX)  null ) WITH (
    DISTRIBUTION = HASH ( doc_name ), 
    CLUSTERED INDEX ( doc_name ASC ) );

insert into dbo.test ([doc_name],[code],[currentState_id],[json_doc])  values ('doc1.txt','doc1',1,'{"one":"value1","two":"value2"}');

select JSON_VALUE(json_doc,'$.one') from dbo.test where code = 'doc1';
--  Msg 104162, Level 16, State 1, Line 17 
-- 'JSON_VALUE' is not a recognized built-in function name. SELECT compatibility_level FROM SYS.databases where name = my_DW';
-- returns 130

Насколько я понимаю, согласно документации, JSON_VALUE должен работать в хранилище данных SQL Azure, если уровень совместимости равен 130.

1 Ответ

0 голосов
/ 24 июля 2019

По состоянию на 8 мая 2019 года JSON_VALUE работает в хранилище данных SQL Azure

См. Главное объявление здесь .

Мои результаты сегодняшнего живого теста с вашимзапрос в хранилище данных SQL Azure: My Results

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...