【发布时间】:2013-09-02 21:53:19
【问题描述】:
我的 java 应用程序中的一个主要要求是将 sql 查询存储在数据库上以供以后使用。 由于我的应用程序连接到不同的数据库类型,如 MSSQL、HSQL、Oracle 等,并且每种类型都有自己的 sql 脚本格式,我需要一个解析器/转换器来将我的 sql 脚本解析为一种统一语言 (XML) 和反过来。
因此,当存储像 'SELECT * FROM [Project].[dbo].tableName' (MSSQL) 这样的脚本时,它会被解析为:
<Select>
<fields>*</fields>
<tableSource>tableName</tableSource>
我的问题是,是否有一个可免费下载的转换器用于此任务,它支持不同类型的 DB 语法,或者如果没有,这是实现此解析器以覆盖大部分语法的最有效方法.
【问题讨论】:
-
您可能想查看JPA 和例如Hibernate 的实现。 - 使用 hibernate,您可以使用 Hibernate 查询语言 (HQL),然后 Hibernate 将在运行时将其转换为所用 DBMS 的相应 SQL 语句。 - 或者看看 Hibernate 的 SQL Dialects。
-
@HannoBinder 将对其进行研究并通知您。感谢您的回复
标签: java sql xml parsing converter