我需要解释为什么我们需要将 XML 文档存储在数据库中。
在好的方面:
- 无需将单个元素分解为表格并归属于列
- 无需维护表之间的关系,因为它们自包含在 XML 中
- 可跨共享 XML 的系统移植
- 如果有需要,实际上所有 DBMS 都支持 XML 操作以将 XML 作为关系实体进行查询。
不利的一面:
- 网络有效负载比 RDBMS 计数器部分大得多。
- 要求客户端应用程序将它们分解为可用组件。
这些理由是否有效?谁能想到更多?
我需要解释为什么我们需要将 XML 文档存储在数据库中。
在好的方面:
不利的一面:
这些理由是否有效?谁能想到更多?
没有真正的明确的赞成名单 - 它取决于你想要做什么。但这里还有几个供您考虑:
blob like '%xxx%'
)。也许您被困在一个不支持 XML 功能的旧版本的数据库上(例如,Mysql 4)。Sqlite 和 hsql 等更轻量级的 SQL 数据库也属于这个阵营。利弊实际上取决于您将要存储的内容及其用途。
讨论您的评论:
这两种情况都有利有弊,这取决于您的使用场景。
存储为 XML 本身的主要缺点是我们无法快速搜索特定数据。要执行搜索,我们必须检索并解析所有 XML 文件。
我们在一个项目中遇到了类似的情况。经过讨论,我们采取了一种中间立场:所有主要信息(需要快速查询的信息)都存储在相关表中。我们还存储了 XML;但我们没有像这样存储 XML,而是将 XML 保存到磁盘并在表中使用该文件路径。