什么是CallableStatement的SQL等价物?

时间:2016-06-27 09:52:18

标签: java database postgresql jdbc callable-statement

我有一些我正在尝试修复的代码,并且在CallableStatement中使用了一个函数,但似乎在一个特定的实例中调用了该函数,其中数据库的Schema成为整个'可见的'功能数据库。

让我解释一下:

我的数据库(在PostgreSQL中)有多个项目(模式),例如i2b2test_projecti2b2test_project2。每个项目都有多个表的体系结构,例如visit_dimensionpatient_dimension等。

现在,如果我想从visit_dimension引用i2b2test_project表,我需要使用i2b2test_project.visit_dimension,正如任何逻辑SQL语法所暗示的那样。

问题是,在代码(我将在下面包含)中,CallableStatement用于执行一个函数(普通的旧的load-table-from-temp-table函数)。此函数引用上面提到的体系结构,就好像只存在一个项目一样,作为数据库。换句话说,它不是引用i2b2test_project.visit_dimension,而是仅引用visit_dimension

我还没有找到在数据库的某种“分离实例”中执行函数的方法,因此,该函数不能在DB终端内的普通SQL语句中使用,如{等{ {1}}等等。

所以我问:call语句(确实似乎引用了模式)是否允许数据库的这种“分离实例”?有没有办法用简单的SQL语句来做到这一点?

代码:

visit_dimension table does not exist

0 个答案:

没有答案