Java程序调用SQLServer的存储过程,从日志可以看到,存储过程执行的过程中遇到了
异常,但是通过存储过程执行的日志看,它还是完整的执行完了,并没有因为中间抛出的异常而中断。
再次在数据库连接工具中手动调用存储过程,打印中间要执行的SQL时才找到中间异常的SQL,而且存储过程也在执行异常SQL的点上中断了。
class="java" name="code">2013-08-15 01:00:00,015 INFO - <======================采集程序启动: 1> [com.lh
lm.service.CollectService]
2013-08-15 01:08:09,609 ERROR - <采集程序异常中断:CallableStatementCallback; S
QL [{call pro_up2tmp(?)}]; 不允许从数据类型 datetime 到 int 的隐式转换。请使用 C
ONVERT 函数来运行此查询。; nested exception is java.sql.SQLException: 不允许从数
据类型 datetime 到 int 的隐式转换。请使用 CONVERT 函数来运行此查询。> [com.lhlm.
service.CollectService]
org.springframework.dao.DataIntegrityViolationException: CallableStatementCallba
ck; SQL [{call pro_up2tmp(?)}]; 不允许从数据类型 datetime 到 int 的隐式转换。请
使用 CONVERT 函数来运行此查询。; nested exception is java.sql.SQLException: 不允
许从数据类型 datetime 到 int 的隐式转换。请使用 CONVERT 函数来运行此查询。
at org.springframework.jdbc.support.SQLStateSQLExceptionTranslator.doTra
nslate(SQLStateSQLExceptionTranslator.java:101)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslat
or.translate(AbstractFallbackSQLExceptionTranslator.java:72)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslat
or.translate(AbstractFallbackSQLExceptionTranslator.java:80)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslat
or.translate(AbstractFallbackSQLExceptionTranslator.java:80)