我是 Derby 的新手,正在尝试确定其中的 SQL 解析器是否可以与真实数据库分开使用。例如,我希望能够获取 SQL 语句中引用的表的列表。我相信这可以通过从给定的 jdbc 嵌入式驱动程序连接中获取 ContextManager 来完成,然后从查询树中获取结果集节点(参见http://rickosborne.org/blog/2010/02/derby-svn-coldfusion -sql-解析器/ )。
我遇到的问题是 SQL 中的表实际上并不存在于 Derby DB 中(并且 Derby 正确地检查了这一点并以 java.sql.SQLSyntaxErrorException: "Table/View 'FOO' does not exist .") 那么...有没有办法配置连接,以便在执行 prepareStatement(sql) 时不检查表的存在?(连接是使用 driver.connect("jdbc:derby:memory:dummy;create=true",props) 创建的)