带有以逗号分隔的currentFunctionPath列表的JDBC DB2 URL

时间:2018-12-18 21:28:16

标签: java jdbc db2

我觉得这应该非常简单,但是由于某种原因,我只是在任何地方都找不到答案。

我正在设置一个数据源,该数据源没有很多要设置的属性的设置器。结果,我正在使用jdbc URL将一些连接属性传递到应用程序中。

我需要设置一个以逗号分隔的模式列表的currentFunctionPath。通常,这可以通过运行以下sql来实现:

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div class="nav-slider">
test
</div>

<button>slider</button>

但是,我需要在应用程序中进行所有连接,所以我想使用以下jdbc URL:

set path ASCHEMA, ANOTHERSCHEMA, YETANOTHERSCHEMA; 

但是,每当执行此操作时,我都会收到URL语法错误,并且当它到达我的逗号分隔路径列表中的第一个逗号时,它似乎总是停止读取该行。

我已经尝试过&s,引号,双引号等,但是我只是想不通如何使之工作。

有人知道该怎么做吗?

谢谢!

注意:我需要这样做的原因涉及到调用存储过程,而存储过程又调用了其他不完全合格的存储过程。我无法修改这些存储过程以使其完全合格。

错误:

jdbc:db2://localhost:55555/FOLDER:currentSchema=ASCHEMA;currentFunctionPath=ASCHEMA,ANOTHERSCHEMA,YETANOTHERSCHEMA;

1 个答案:

答案 0 :(得分:0)

因此,事实证明,DB2根本不讨厌以逗号分隔的currentFunctionPath列表。

实际上,我是从属性文件传递jdbc url的。当Java从属性文件中提取jdbc url时,它以逗号结尾该属性。我通过在网址上执行System.out.println(theurl)进行了测试。

我所要做的就是用反斜杠(\)转义逗号,以便Java实际上可以正确提取该属性。然后一切正常。

jdbc:db2://localhost:55555/FOLDER:currentSchema=ASCHEMA;currentFunctionPath=ASCHEMA\,ANOTHERSCHEMA\,YETANOTHERSCHEMA;

我很高兴能解决这个问题!