SQLCODE = -206, SQLSTATE = 42703, SQLERRMC = SEQNAME, DRIVER = 4.8.86 - PullRequest
0 голосов
/ 02 сентября 2018

У меня есть исключение в моем коде. я использую фреймворки Spring, JPA, Hibernate

Maven это:

<!-- DB2 Connection -->
    <dependency>
        <groupId>com.ibm.db2</groupId>
        <artifactId>db2jcc4</artifactId>
        <version>10.5</version>
    </dependency>
    <dependency>
        <groupId>com.ibm.db2</groupId>
        <artifactId>db2jcc4_license_cisuz</artifactId>
        <version>10.5</version>
    </dependency>
    <dependency>
        <groupId>com.ibm.db2</groupId>
        <artifactId>db2jcc4_license_cu</artifactId>
        <version>10.5</version>
    </dependency>

и до:

@Entity
@Table( name="...", schema="..." )
public class Branch {
  @Id
  @Column(name = "O1001ID")
  private Long id;

  @Column(name = "O1001NAM")
  private String name;

  @Column(name = "O1001COD")
  private String code;

  // getter and setter

}

и ошибка

SQLCODE=-206, SQLSTATE=42703, SQLERRMC=SEQNAME, DRIVER=4.8.86

Я хочу знать, что такое SEQNAME? Я определил это где-то?

1 Ответ

0 голосов
/ 03 сентября 2018

Попробуйте добавить

logging.level.org.springframework.web=INFO
logging.level.org.hibernate=INFO
logging.file=c:/temp/my-log/app.log

logging.level.org.hibernate.SQL=DEBUG
logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE

в вашем application.properties, это покажет вам несколько запросов трассировки.

У меня была эта проблема прежде, потому что JPA форматирует ваш запрос, например, если вы звоните Repository.count();, запрос будет отформатирован как select count(u) From table u, который имеет недопустимый формат для DB2, чтобы преодолеть это, мне пришлось определить мой собственный @Query должен быть select count(*) From table u.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...