Heim > Datenbank > MySQL-Tutorial > org.quartz.JobPersistenceException

org.quartz.JobPersistenceException

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Freigeben: 2016-06-07 15:13:06
Original
3537 Leute haben es durchsucht

运行quartz在MS SQL是出现异常,异常代码如下: org . quartz . JobPersistenceException : Couldn 't acquire next trigger: Couldn' t retrieve trigger : [ Microsoft ] [ SQLServer 2000 Driver for JDBC ] ResultSet can not re - read row data for co

运行quartz在MS SQL是出现异常,异常代码如下:
 

<span><span>org</span><span>.</span>quartz<span>.</span>JobPersistenceException<span>:</span> Couldn<span>'t acquire next trigger: Couldn'</span>t retrieve trigger<span>:</span> <span>[</span>Microsoft<span>]</span><span>[</span>SQLServer 2000 <span>Driver</span> <span>for</span> JDBC<span>]</span><span>ResultSet</span> can <span>not</span> re<span>-</span><span>read</span> row data <span>for</span> column 9<span>.</span> <span>[</span>See nested <span>exception</span><span>:</span> <span>org</span><span>.</span>quartz<span>.</span>JobPersistenceException<span>:</span> Couldn<span>'t retrieve trigger: [Microsoft][SQLServer 2000 Driver for JDBC]ResultSet can not re-read row data for column 9. [See nested exception: java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]ResultSet can not re-read row data for column 9.]]<br>    at org.quartz.impl.jdbcjobstore.JobStoreSupport.acquireNextTrigger(JobStoreSupport.java:2741)<br>    at org.quartz.impl.jdbcjobstore.JobStoreSupport$35.execute(JobStoreSupport.java:2699)<br>    at org.quartz.impl.jdbcjobstore.JobStoreSupport.executeInNonManagedTXLock(JobStoreSupport.java:3711)<br>    at org.quartz.impl.jdbcjobstore.JobStoreSupport.acquireNextTrigger(JobStoreSupport.java:2695)<br>    at org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:266)<br>Caused by: org.quartz.JobPersistenceException: Couldn'</span>t retrieve trigger<span>:</span> <span>[</span>Microsoft<span>]</span><span>[</span>SQLServer 2000 <span>Driver</span> <span>for</span> JDBC<span>]</span><span>ResultSet</span> can <span>not</span> re<span>-</span><span>read</span> row data <span>for</span> column 9<span>.</span> <span>[</span>See nested <span>exception</span><span>:</span> <span>java</span><span>.</span><span>sql</span><span>.</span><span>SQLException</span><span>:</span> <span>[</span>Microsoft<span>]</span><span>[</span>SQLServer 2000 <span>Driver</span> <span>for</span> JDBC<span>]</span><span>ResultSet</span> can <span>not</span> re<span>-</span><span>read</span> row data <span>for</span> column 9<span>.</span><span>]</span><br>    at <span>org</span><span>.</span>quartz<span>.</span>impl<span>.</span>jdbcjobstore<span>.</span>JobStoreSupport<span>.</span>retrieveTrigger<span>(</span>JobStoreSupport<span>.</span><span>java</span><span>:</span>1549<span>)</span><br>    at <span>org</span><span>.</span>quartz<span>.</span>impl<span>.</span>jdbcjobstore<span>.</span>JobStoreSupport<span>.</span>retrieveTrigger<span>(</span>JobStoreSupport<span>.</span><span>java</span><span>:</span>1525<span>)</span><br>    at <span>org</span><span>.</span>quartz<span>.</span>impl<span>.</span>jdbcjobstore<span>.</span>JobStoreSupport<span>.</span>acquireNextTrigger<span>(</span>JobStoreSupport<span>.</span><span>java</span><span>:</span>2728<span>)</span><br>    <span>.</span><span>.</span><span>.</span> 4 more<br>Caused by<span>:</span> <span>java</span><span>.</span><span>sql</span><span>.</span><span>SQLException</span><span>:</span> <span>[</span>Microsoft<span>]</span><span>[</span>SQLServer 2000 <span>Driver</span> <span>for</span> JDBC<span>]</span><span>ResultSet</span> can <span>not</span> re<span>-</span><span>read</span> row data <span>for</span> column 9<span>.</span><br>    at com<span>.</span>microsoft<span>.</span>jdbc<span>.</span>base<span>.</span>BaseExceptions<span>.</span>createException<span>(</span><span>Unknown</span> <span>Source</span><span>)</span><br>    at com<span>.</span>microsoft<span>.</span>jdbc<span>.</span>base<span>.</span>BaseExceptions<span>.</span><span>getException</span><span>(</span><span>Unknown</span> <span>Source</span><span>)</span><br>    at com<span>.</span>microsoft<span>.</span>jdbc<span>.</span>base<span>.</span>BaseResultSet<span>.</span>validateColumnIndex<span>(</span><span>Unknown</span> <span>Source</span><span>)</span><br>    at com<span>.</span>microsoft<span>.</span>jdbc<span>.</span>base<span>.</span>BaseResultSet<span>.</span><span>getInt</span><span>(</span><span>Unknown</span> <span>Source</span><span>)</span><br>    at com<span>.</span>microsoft<span>.</span>jdbc<span>.</span>base<span>.</span>BaseResultSet<span>.</span><span>getInt</span><span>(</span><span>Unknown</span> <span>Source</span><span>)</span><br>    at <span>org</span><span>.</span>apache<span>.</span>commons<span>.</span>dbcp<span>.</span>DelegatingResultSet<span>.</span><span>getInt</span><span>(</span>DelegatingResultSet<span>.</span><span>java</span><span>:</span>236<span>)</span><br>    at <span>org</span><span>.</span>quartz<span>.</span>impl<span>.</span>jdbcjobstore<span>.</span>StdJDBCDelegate<span>.</span>selectTrigger<span>(</span>StdJDBCDelegate<span>.</span><span>java</span><span>:</span>2129<span>)</span><br>    at <span>org</span><span>.</span>quartz<span>.</span>impl<span>.</span>jdbcjobstore<span>.</span>JobStoreSupport<span>.</span>retrieveTrigger<span>(</span>JobStoreSupport<span>.</span><span>java</span><span>:</span>1531<span>)</span><br>    <span>.</span><span>.</span><span>.</span> 6 more</span>

分析:使用SQLServer 数据库时,可能发生此异常,原因是微软自己的jdbc驱动不支持同一个记录的字段的重复读取,因为微软加入了text,image这种类型的支持,就限制了字段的回读功能.原因是如果该表存在TEXT, NTEXT, IMAGE等大型字段,对于ResultSet的字段读取必须按照从左向右读,如果你用:

int a = rs.getInt(2);
int b = rs.getInt(1);

则报错。Microsoft给出的方案是不能从右往左也不能连续读2次。

解决方法:这个是微软JDBC驱动的一个bug,我们也可以不用他的驱动,自己到网上下载jtds.jar驱动,使用这种驱动就不会出现上面的异常了.

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage