当前位置: 首页 > 面试题库 >

MySQL的XML输出

方弘
2023-03-14
问题内容

是否有可能将MySQL查询的输出直接转换为XML?

我指的是类似MSSQL的 SQL-XML 插件,例如:

SELECT * FROM table WHERE 1 FOR XML AUTO

返回文本(或精确地说是MSSQL中的xml数据类型),该文本包含根据表中的列生成的XML标记结构。

使用 SQL-XML ,还可以选择如下显式定义输出XML结构:

SELECT
  1       AS tag,
  NULL    AS parent,
  emp_id  AS [employee!1!emp_id],
  cust_id    AS [customer!2!cust_id],
  region    AS [customer!2!region]
 FROM table
 FOR XML EXPLICIT

生成如下的XML代码:

<employee emp_id='129'>
   <customer cust_id='107' region='Eastern'/>
</employee>

您有什么线索可以在MySQL中实现吗?

预先感谢您的回答。


问题答案:

将XML与MySQL结合使用似乎是从MySQL查询转换为XML的各种不同方式的好地方。

从文章:

   use strict;
   use DBI;
   use XML::Generator::DBI;
   use XML::Handler::YAWriter;

   my $dbh = DBI->connect ("DBI:mysql:test",
                           "testuser", "testpass",
                           { RaiseError => 1, PrintError => 0});
   my $out = XML::Handler::YAWriter->new (AsFile => "-");
   my $gen = XML::Generator::DBI->new (
                                   Handler => $out,
                                   dbh => $dbh
                               );
   $gen->execute ("SELECT name, category FROM animal");
   $dbh->disconnect ();


 类似资料:
  • 问题内容: 我的网站上有一个MySQL数据库,我想知道如何通过PHP从表中的以下各列获取XML输出: 你做了 国家 问题答案: XMLWriter的示例。 输出:

  • 在本章中,我们将创建一个使用MySQL阅读器和XML编写器的Spring Batch应用程序。 Reader - 我们在应用程序中使用的阅读器是JdbcCursorItemReader ,用于从MySQL数据库中读取数据。 假设我们在MySQL数据库中创建了一个表,如下所示 - CREATE TABLE details.xml_mysql( person_id int(10) NOT NU

  • 在本章中,我们将创建一个使用XML Reader和MySQL Writer的Spring Batch应用程序。 Reader - 我们在应用程序中使用的阅读器是StaxEventItemReader ,用于从XML文档中读取数据。 以下是我们在此应用程序中使用的输入XML文档。 本文档包含数据记录,这些记录指定了教程ID,教程作者,教程标题,提交日期,教程图标和教程描述等详细信息。 <?xml v

  • 问题内容: 我需要将Opencover Coverage结果导入Jenkins的能力,以便随着时间的推移提取Coverage趋势数据。似乎最好的方法是找到一种方法,将opencover xml格式转换为ncover格式,然后使用NCover插件导入结果。是否存在将xpress将opencover转换为ncover的现有xslt,或将进行转换的开源工具?我已经搜索过,却一无所获。 谢谢 问题答案:

  • 问题内容: 我在MySQL的ExtractValue函数方面有点问题。 这是我的示例XML: 这是我当前的查询: 结果如下: 这是我想要的: 有人可以帮我实现这一点..谢谢。 问题答案: 在这里回答了这个问题: 在MySQL中解析XML字符串 如果将子级更改为“ B”,则该文章中的解决方案应该起作用:

  • 问题内容: 有没有一种方法可以模拟MySQL中的OUTPUT子句,因为我们在SQL Server中有一个OUTPUT子句。 这是我的查询类型 因为我也需要MySQL服务器数据库具有此功能。 请提出实现此功能的最佳方法。 问题答案: 您可以创建触发器并将所需的值插入另一个表。 我不确定,但是-对于MYISAM表,您可以锁定表,选择值并将其插入另一个表,然后更新和解锁表。 编辑: 我已经尝试了一种使用