问题标签 [open-json]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
117 浏览

sql-server - 无法使用 OPENJSON 解析字符串

我对 OPENJSON 没有太多经验,我尝试使用这些示例,但我无法解析下面的字符串

任何人都可以帮助我。

我希望它采用以下格式:

这是我尝试使用的代码:

0 投票
0 回答
63 浏览

json - 即使过程返回正确的值,数据集也没有值

我有一个过程,我使用 OPENJSON 将 Json 字符串显示为键值对。当我执行该过程时,它在控制器中返回预期值 bu,数据集为空。它只显示表头 - 键、值、类型。根本没有数据。当我使用不同的非常相似的程序时,它似乎工作正常。不知道发生了什么。请帮忙!提前致谢!

这是我的程序:

这是我的行动:

该过程在执行时会给出一个包含键值对的表。但是当我调试时,“数据”是“DataSetVisualizer”中的一个空表。仅带有标题(键,值,类型)的空表。不存在数据。这是我在程序中的 Print @json

0 投票
1 回答
43 浏览

sql-server - 通过 OPENJSON 检索 JSON 嵌套值

需要检索 Batters/Batter/Type 1-4 的值

这是JSON数据

使用 selected * from openjson 检索值,但无法获取嵌套/嵌套值

0 投票
1 回答
1626 浏览

tsql - OPENJSON 在兼容级别设置为 130 的 SQL Server 2016 上不可用

我正在尝试OPENJSON在 SQL Server 2016 上运行的数据库中使用,并在运行这个简单的测试查询时出现以下错误(在不同的 2016 数据库上运行良好)

select * from OPENJSON('{ "test": "test" }')

Invalid object name 'OPENJSON'.

我知道兼容性级别设置,但在此数据库上似乎并非如此。它的兼容级别已经设置为 130。这个特定的数据库是从旧的 2008R2 数据库迁移而来的。我们还需要做些什么来访问该OPENJSON功能吗?

编辑

作为测试,我在同一个数据库服务器上创建了一个新的空数据库,上面的查询工作正常。所以数据库服务器似乎不是问题,它与我们迁移的一个数据库有关。

如果这很重要,我将作为SA帐户连接。

0 投票
2 回答
50105 浏览

sql-server - SQL Server 无效版本:15 (Microsoft.SqlServer.Smo)

上下文:我在修改 SQL Server 2016 中的存储过程时遇到了困难。存储过程在文件中执行 json 数据的解析。由于某种原因,我能够执行存储过程并成功执行,但是当我尝试修改存储过程时,我收到以下消息:

在此处输入图像描述

问题:有人有任何故障排除技巧吗?下面是存储过程的内容。SQL Server 2016 支持使用的各种函数,包括 OPENJSON 函数。

0 投票
1 回答
1301 浏览

sql-server - SQL Server -- 错误 = [Microsoft] [SQL Server Native Client 10.0][SQL Server] 对象名称无效

上下文:我们的核心应用程序的一个特性依赖于 SQL Server 中存储过程的输出文件。该文件应该通过BCP实用程序输出。

问题:与无效对象名称相关的错误似乎是罪魁祸首。该过程正在生成以下错误。我非常不清楚该过程中引用的全局临时表如何/为什么使用无效名称。我尝试用不能解决问题的标准表替换临时表。有人可以提供一些提示/技巧吗?

存储过程:

错误:

SQLState = S0002,NativeError = 208
错误 = [Microsoft][SQL Server Native Client 10.0][SQL Server]无效的对象名称“##jsonparsed_personnel”

SQLState = 37000,NativeError = 8180
错误 = [Microsoft][SQL Server Native Client 10.0][SQL Server]无法准备语句。

0 投票
1 回答
132 浏览

json - 使用 T-SQL 解析 JSON

我希望只选择 JSON 字符串中的每个值名称和值,并转入 SQL 中的单独列,以便我可以轻松地将它们传递到 powershell 字符串中以发送到外部 API

所以我想看

0 投票
1 回答
444 浏览

json - 如何从 SQL Server 中的动态节点加载 OPENJSON

我通过 REST API 接收的 JSON 格式具有我无法加载到 OPENJSON 中的动态节点。JSON 响应来自第三方,我无法更改它。请参阅下面的示例并注意日期被用作节点:

如果我知道使用以下代码的确切日期,则可以获取特定节点:

然而这并没有帮助,因为我不会提前知道日期,并且使用这种方法一次只能选择一个日期节点。

如何在不事先知道节点名称的情况下引用这些动态日期?

0 投票
1 回答
348 浏览

json - 使用 T-SQL 从 RESTful API 解析 JSON

我想将来自 SurveyHero 的 RESTful api 使用到 SQL Server 中,我有两个问题:

  • 我将如何直接在 SQL SERVER 中使用需要 BasicAuth 的 RESTful API。
  • 我尝试使用 C# 中的 API 并将 JSON 数据传递给 SQL Server,并尝试使用 OPENJSON() 函数来解析 JSON 数据。

API返回的json如下:

现在我尝试了以下 OPENJSON 函数:

上述查询失败,抛出以下错误:

但是,如果我{"surveys":[从根目录中删除它可以正常工作,但是当我调用 API 时,它总是以这种方式返回,有人可以建议我如何正确解析 JSON 吗?

0 投票
1 回答
531 浏览

json - SQL Server 2016 中存储过程中的 OPENJSON 语法

我正在关注此页面上的最后一个示例https://www.sqlservercentral.com/forums/topic/using-msxml2-serverxmlhttp-within-stored-procedure-to-grab-source-of-html-page-and-保存到表

它提取数据并将其加载到表中。我觉得我在最后一步的语法是错误的。代码提取数据,但我OPENJSON的错误,因此没有数据放入表中。任何帮助表示赞赏。

返回的数据是:

我想知道是否甚至可以解析

添加了编辑数据

需要的结果