Java 如何使用ODI 11g SDK获取连接属性

Java 如何使用ODI 11g SDK获取连接属性,java,oracle,oracle11g,sdk,oracle-data-integrator,Java,Oracle,Oracle11g,Sdk,Oracle Data Integrator,我正在使用ODI11GSDK来读取接口。使用以下代码获取联接集合后: Collection<Join> joins = dataset.getJoins(); 我只能检查集合中的联接是交叉联接、自然联接、左外联接还是右外联接,但在ODI工具中,我可以将联接设置为内部联接或完全联接,这是我无法使用SDK检测到的 我尝试在SDK中搜索其他类或函数,但似乎没有给出这些细节 谁能帮我一下吗。你需要使用isOuter1和isOuter2 如果它们都返回true,则为完全外部联接。 如果它们都

我正在使用ODI11GSDK来读取接口。使用以下代码获取联接集合后:

Collection<Join> joins = dataset.getJoins();
我只能检查集合中的联接是交叉联接、自然联接、左外联接还是右外联接,但在ODI工具中,我可以将联接设置为内部联接或完全联接,这是我无法使用SDK检测到的

我尝试在SDK中搜索其他类或函数,但似乎没有给出这些细节


谁能帮我一下吗。

你需要使用isOuter1和isOuter2

如果它们都返回true,则为完全外部联接。 如果它们都返回false,则表示内部联接。 如果第一个返回true,第二个返回false,则为左外连接 如果第一个返回false,第二个返回true,则为右外连接 类似地,您可以使用setOuter1和setOuter2来更改联接的类型。
更多详细信息:

谢谢Jerome,我可以使用这些条件来编写代码。此外,如果两者都为false,那么它也可以是交叉连接或自然连接,因此也需要对此进行检查。交叉连接只是连接条件始终为true的内部连接。对于自然连接,这是不同的。这只是另一种语法,但可以是左外、右外或内: