Datalog是查询关系数据的可爱语言。它简单,清晰,组合良好,并且支持递归查询而无需额外的语法。
SQLite是一个非常棒的嵌入式数据库,其中powerful query engine能够处理递归查询 - 请参阅该页面底部的示例,以生成Mandelbrot集并找到Sudoko的所有可能解决方案困惑!
我有兴趣知道是否有一种相当标准的方法可以将数据记录查询转换为SQLite支持的递归SQL,或者是否有提供此功能的库。
答案 0 :(得分:2)
DLVDB是递归数据记录的解释器,它使用ODBC数据库连接作为其扩展数据:http://www.dlvsystem.com/dlvdb/
除此之外,论文
S上。 Ceri,G。Gottlob和L. Tanca。你总是想知道关于Datalog的事情(从来不敢问)。 IEEE Trans。在Knowl。和数据工程。 1,1(1989年3月),146-166。 http://dx.doi.org/10.1109/69.43410
提供了将Datalog转换为关系代数的理论背景和一些指示。