Каков правильный способ включения имени схемы в URL-адрес строки подключения Exasol?

Я использую Hibernate для подключения к базе данных Exasol с помощью Hibernate Dialect Exasol. Когда я использую следующий файл persistence.xml, все работает нормально:

  <persistence-unit name="exasol">
    <description>exasol</description>
    <provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>
    <properties>
      <property name="javax.persistence.jdbc.driver" value="com.exasol.jdbc.EXADriver" />
      <property name="javax.persistence.jdbc.url" value="jdbc:exa:192.168.6.11:8563" />
      <property name="javax.persistence.jdbc.user" value="user" />
      <property name="javax.persistence.jdbc.password" value="pass" />
      <property name="hibernate.dialect" value="com.incuda.config.ExasolDialect"/>
      <property name="hibernate.default_schema" value="my_schema" />
    </properties>
  </persistence-unit>

Но теперь я не хочу использовать следующее свойство по некоторым внутренним причинам (например, по этой причине):

  <property name="hibernate.default_schema" value="my_schema" />

и замените его, включив имя схемы в URL-адрес строки подключения, как предложено в Руководство пользователя EXASolution, стр. 349 (URL для загрузки):

<property name="javax.persistence.jdbc.url" value="jdbc:exa:192.168.6.11:8563;schema=my_schema" />

Но когда я это делаю, я получаю следующее исключение:

Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: -1
    at java.lang.String.substring(String.java:1967)
    at com.incuda.config.ExasolIdentityColumnSupport.getIdentitySelectString(ExasolIdentityColumnSupport.java:25)

Итак, как правильно включить имя схемы в URL-адрес строки подключения Exasol?


person gdrt    schedule 27.02.2018    source источник
comment
зачем тебе схема? Если у вас есть схема перед всеми вашими таблицами, представлениями и скриптом, это не должно быть проблемой. Также вы можете запустить команду OPEN SCHEMA my_schema; при открытии соединения   -  person mucio    schedule 28.02.2018
comment
Это интересно, посмотрю.   -  person gdrt    schedule 28.02.2018