Windows 7 マシンにインストールされたデータベースのデータを使用ApacheMetaModel
しています。マルチスレッド環境でデータを CSV に抽出しています。これらのオープンソース ライブラリを使用していますExtract
Sybase ASE 15.5
<dependency>
<groupId>com.sybase</groupId>
<artifactId>jconn4</artifactId>
<version>4.0</version>
</dependency>
<dependency>
<groupId>com.sybase</groupId>
<artifactId>DDLGen</artifactId>
<version>4.0</version>
</dependency>
<dependency>
<groupId>com.sybase</groupId>
<artifactId>dsparser</artifactId>
<version>4.0</version>
</dependency>
SELECT クエリを実行しようとすると、エラーが発生します。特定のクエリに対して例外をスローしません。任意のテーブルに対して例外をスローできます。を使用してクエリを作成しようとしていますApache Meta-model
DataContext
。
Query query = dataContext.query().from(table).as("ct").selectAll().toQuery();
dataContext.executeQuery(query).iterator();
上記のコードは、次のようなクエリを作成します。
SELECT ct."Column1", ct."Column2", ct."Column3", ct."Column4", ct."Column5", ct."Column6", ct."Column7", ct."Column8", ct."Column9", ct."id" FROM schemaowner."tablename" ct
以下はスタック トレースです。
! com.sybase.jdbc4.jdbc.SybSQLException: There is already another cursor with the name 'jconnect_implicit_134' at the nesting level '0'.
!
! at com.sybase.jdbc4.tds.Tds.processEed(Tds.java:4117) ~[jconn4-4.0.jar:JDK 1.6/jdbcmain/Thu Apr 30 04:18:00 PDT 2015]
! at com.sybase.jdbc4.tds.Tds.nextResult(Tds.java:3207) ~[jconn4-4.0.jar:JDK 1.6/jdbcmain/Thu Apr 30 04:18:00 PDT 2015]
! at com.sybase.jdbc4.tds.Tds.getResultSetResult(Tds.java:3973) ~[jconn4-4.0.jar:JDK 1.6/jdbcmain/Thu Apr 30 04:18:00 PDT 2015]
! at com.sybase.jdbc4.tds.TdsCursor.open(TdsCursor.java:328) ~[jconn4-4.0.jar:JDK 1.6/jdbcmain/Thu Apr 30 04:18:00 PDT 2015]
! at com.sybase.jdbc4.jdbc.SybStatement.executeQuery(SybStatement.java:2604) ~[jconn4-4.0.jar:JDK 1.6/jdbcmain/Thu Apr 30 04:18:00 PDT 2015]
! at com.sybase.jdbc4.jdbc.SybStatement.executeQuery(SybStatement.java:555) ~[jconn4-4.0.jar:JDK 1.6/jdbcmain/Thu Apr 30 04:18:00 PDT 2015]
! at org.eobjects.metamodel.jdbc.JdbcDataContext.execute(JdbcDataContext.java:381) ~[MetaModel-jdbc-3.4.7.jar:na]
! at org.eobjects.metamodel.jdbc.JdbcDataContext.executeQuery(JdbcDataContext.java:438) ~[MetaModel-jdbc-3.4.7.jar:na]
! Causing: org.eobjects.metamodel.MetaModelException: Could not execute query: There is already another cursor with the name 'jconnect_implicit_134' at the nesting level '0'.
!
! at org.eobjects.metamodel.jdbc.JdbcUtils.wrapException(JdbcUtils.java:70) ~[MetaModel-jdbc-3.4.7.jar:na]
! at org.eobjects.metamodel.jdbc.JdbcDataContext.executeQuery(JdbcDataContext.java:444) ~[MetaModel-jdbc-3.4.7.jar:na]