问题标签 [xml-column]

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 投票
3 回答
14447 浏览

sql-server - 如何通过检查两个节点的值来更新 sql server 中的 XML 列,包括一个需要进行包含(类似)比较的节点

我在 Orders 表中有一个名为 OrderXML 的 xml 列...表中
有一个像这样的 XML XPath...

那里 InternalOrderDetails 包含许多像这样的 InternalOrderDetail 节点......

如果节点的 Item_Number 包含 COTRGUID(如 '%COTRGUID')并且 PriceLevel=NONFREE,我的最终目标是修改 OrderXML 列中的 XML。如果满足该条件,我想将 PriceLevel 列更改为 FREE。

我在创建找到正确节点的 xpath 表达式(使用 OrderXML.value 或 OrderXML.exist 函数)和使用 OrderXML.modify 函数更新 XML 时都遇到了麻烦。

对于 where 子句,我尝试了以下方法:

这确实有效,但在我看来,我还需要在同一个 where 子句中包含我的第二个条件(PriceLevel=NONFREE),我不知道该怎么做。也许我可以为这样的第二个条件加上一个 AND ......

但我担心它最终会像 OR 一样运行,因为它是一个 XML 查询。

一旦我得到正确的 WHERE 子句,我将使用这样的 SET 更新列:

但是,我在一些测试数据上运行了这个语句,并且没有更新的 XML 列(即使它说 zz 行受到影响)。

我一直在这几个小时无济于事。帮助表示赞赏。谢谢。

0 投票
1 回答
1101 浏览

tsql - T-SQL XML 检索属性值和相应的元素值

我在表中有一个 XML 列。此列称为 UserDef。Xml 看起来像这样:

返回如下结果的查询应该是什么样子:

谢谢你。

0 投票
2 回答
128 浏览

sql - 为什么在 SELECT 查询中包含 XML 列会对查询性能产生如此大的负面影响?

几个星期以来,我一直在努力解决查询性能问题。在这一点上,我已经从 JOIN 类型、索引、保持统计信息等方面完全排除了查询中的所有内容……等等……但后来我偶然发现了一些东西。

一点背景。

有问题的表格代表一个Record

在进行了一些性能基准测试之后,我意识到在选择中包含最后一列远远超过了索引、连接复杂性和网络考虑因素等因素 10 倍和 20 倍之间。

以下比较是在连接到 SQL Azure 的本地开发机器上的 SSMS 之间进行的。

需要明确的是,我并没有对 xml 列(XML DML 或 XPath 查询)做任何疯狂的事情。只是简单地从选择中包含/排除它。

在这一点上,我想我已经通过创建RecordLight实体、NHibernate Map 和 MVC 控制器堆栈解决了我的问题,纯粹是为了在我们的应用程序中搜索和列出。

但我想了解为什么包含 XML 列会对查询性能产生如此负面的影响

0 投票
1 回答
1544 浏览

sql-server - 选择子节点直到 xpath 中的属性值(SQL Server)

我在 SQL Server 数据库(SQL Server 2012)中有一个 XML 列,其结构如下:

较新的状态将作为顶部节点添加到列中。

我需要选择一个<status>节点子集,其中包括updatedAt属性小于或等于给定日期的第一个节点和所有前面的节点(或者,所有<status> 节点,直到updatedAt属性小于或等于给定日期)。

如何使用 XPath 实现这一点?

现在我结束了这个查询:

但它只返回第一个节点,我怎样才能包含它之前的所有兄弟姐妹呢?

0 投票
1 回答
1809 浏览

sql - 在 SQL Server 中提取具有 XML 命名空间的 XML 列的 datav 值

任何人都可以帮我处理下面的xml。我需要提取所有 xml 值,如下所示。

这是示例 XML。

请做需要的充分。提前致谢。

0 投票
1 回答
61 浏览

sql - 从 LOB 内容中获取部分消息

我在 LOB(大对象)列中有一些 XML 内容(小于 2000 字节)。我曾经dbms_lob_substr(messagebody)获取实际的 XML 内容,但我需要获取特定节点的确切值。

例如。

我需要 say 的值<first name>。我怎样才能做到这一点?

0 投票
1 回答
1663 浏览

sql - 使用 SQL 脚本重命名 XML 列 SQL Server 中的 XML 节点名称

我在名为 ValidationList 的 SQL Server 2012 数据库表中有一个 Xml 列。我在这张表中有几百条记录。

我有如下记录

我需要更新所有行并将节点 TestName 重命名为 ValidationName,如何在 SQL 脚本中执行此操作?

谢谢

0 投票
2 回答
4093 浏览

sql-server - 用于更新存储在列中的 xml 节点的 sql 查询

我正在做一个项目,我正在使用一个表,其中一个列中存储了 xml 数据。我正在尝试根据 xml_id 和 xml 节点的位置更新我的整个 xml 节点,但我无法做到这一点。我试过了以下查询,但它只更新 xml 节点的值,而不是节点的整个键/值。

表结构

在此处输入图像描述

查询更新xml节点的值

所以现在我尝试了以下查询来更新整个内部节点

但是我在尝试执行此操作时遇到错误

消息 9306,级别 16,状态 1,第 2 行
XQuery [tblCCBT_Step_Page_Text_Xml.Xml_XmlData.modify()]:'replace value of' 的目标不能是联合类型,找到 '(element(*,xdt:untyped) | 注释 |处理指令|文本)?'。

这是我存储在列中的 xml

现在在上面的xml中我试图替换 -

请建议如何实现这一目标。谢谢

0 投票
1 回答
121 浏览

mongodb - SQL(MSSQL/MariaDB) 或 NoSQL(MongoDB):XML 搜索和处理

目前的项目情况。

  1. 从外部系统获取大量小于 50KB 的 XML,如果它包含附件,则大小约为 5MB MAX。由于内部嵌套元素,XML 结构的复杂性中等。有大约 70 个第一级元素,然后是它的子元素和子元素......将该 XML 存储在 MS SQL 服务器的 String 列中。
  2. 在存储 XML 时,我们从 XML 中读取搜索条件字段并将它们维护在新列中以改进搜索查询。
  3. 搜索功能以列表的形式显示这些消息数据。搜索条件字段(可选约 10 个字段)来自 XML 元素。解析该 XML 以在列表中显示元素(大约 10 -15)
  4. 将来也有可能报告功能。

此设计的挑战:如果引入了基于新条件搜索列表的新功能,则需要在 DB 表中再添加一列,并且必须从 XML 中存储该字段值,这不是此设计的最佳部分。

建议改进:计划不是以字符串格式存储 XML,而是将其存储为 XML 列,以去除多余的列来保持搜索字段的值,并使用 XML 列查询进行搜索和获取。

问题

  1. 在搜索的情况下,哪个数据库会给我最佳性能?我必须只获取符合该搜索条件的 XML。
  2. SQL 或 NoSQL,如 MongoDB?
  3. 是否有可用的性能指标?或者任何相同的案例研究?
  4. 用于管理报告负载的数据库。
0 投票
1 回答
21 浏览

xml - 在插入 Oracle 之前更改 XML 字段中的文本

我有一列包含 XML 格式的数据。我正在基于该 XML 数据创建一个视图。

从 XML 获取数据并发送到视图的代码类似于下面的代码。我的原始代码有 120-150 列。

TARGET_COST 的数据以 XML 格式保存为 $123。我想修剪第一个字母,以便我可以在视图中以数字格式 123 显示它并用于我的计算。

谁能指导我在哪里可以进行转换?