我正在使用xquery来处理关系数据库。我正在考虑实现某种SAXSource,DOMSource或StreamSource,它们将作为数据输入连接到关系数据库。运行xquery并让saxon将结果xml作为输出流返回。 xml的关系数据库将是非常简单的xml结构,表示saxon的数据输入。以前做过这个的人还是有我可以查看的示例代码?只需看看我如何从关系数据库构建输入流,以及如何调用Saxon将其用作输入流。
答案 0 :(得分:0)
主要问题是表现。 Saxon将数据库简单地视为要加载到内存中的大型XML文件,它无法将XQuery或XPath查询中的谓词转换为关系数据库引擎可用于优化的SQL谓词(例如,通过使用索引)数据库)。
但除此之外,编写一个读取SQL表并发出一系列SAX ContentHandler事件以将其呈现为平面XML结构的类听起来并不困难,而且一旦你完成了它就很容易将其包装成SAXSource,以便Saxon可以直接读取它。
答案 1 :(得分:0)
也许Saxon SQL扩展模块对您来说已经足够了? http://www.saxonica.com/documentation/sql-extension/