使用Derby在没有实际表的情况下解析SQL?

使用Derby在没有实际表的情况下解析SQL?,derby,sql-parser,Derby,Sql Parser,我是Derby的新手,正在尝试确定其中的SQL解析器是否可以与实际数据库分开使用。例如,我希望能够获得SQL语句中引用的表的列表。我相信这可以通过从给定的jdbc嵌入式驱动程序连接获取ContextManager,然后从查询树获取结果集节点来实现(请参阅) 我遇到的问题是,SQL中的表实际上不存在于Derby DB中(Derby正确地检查了这一点,并用java.SQL.SQLSyntaxErrorException响应:“表/视图‘FOO’不存在。”)那么……有没有办法配置连接,以便在不准备语句

我是Derby的新手,正在尝试确定其中的SQL解析器是否可以与实际数据库分开使用。例如,我希望能够获得SQL语句中引用的表的列表。我相信这可以通过从给定的jdbc嵌入式驱动程序连接获取ContextManager,然后从查询树获取结果集节点来实现(请参阅)


我遇到的问题是,SQL中的表实际上不存在于Derby DB中(Derby正确地检查了这一点,并用java.SQL.SQLSyntaxErrorException响应:“表/视图‘FOO’不存在。”)那么……有没有办法配置连接,以便在不准备语句(SQL)时,是否未检查表的存在?(连接是使用driver.connect(“jdbc:derby:memory:dummy;create=true”,props)创建的)也许您可以创建表?由于它是一个内存中的数据库,创建表将是一个非常低的开销操作。

谢谢,Bryan。这个想法在我脑海中闪过……德比是否也会为每个不存在的专栏抛出一个例外?有没有更简单的方法来解析SQL语句并提取其中的表?德比看起来是一个很好的选择,但如果可能的话,我不想制造太多的攻击。