본문 바로가기
Error Report/oracle Exception

oracle.jdbc.driver.DatabaseError : ORA-12899

by cusmaker 2012. 7. 21.
반응형

ORA-12899 : "XXXX"."XXXX"."XXXX" 열에 대한 값이 너무 큼(실제: 1498, 최대값: 200)

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:125)

at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:316)

at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:282)

at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:639)

at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:185)

at oracle.jdbc.driver.T4CPreparedStatement.execute_for_rows(T4CPreparedStatement.java:633)

at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1086)

at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:2984)

at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3076)

at core.log.impl.PreparedStatementLoggable.execute(PreparedStatementLoggable.java:109)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at core.log.aop.handler.DaoInfo.doAround(DaoInfo.java:97)

at core.log.aop.reflection.profiler.AroundProfiler.invoke(AroundProfiler.java:19)

at $Proxy0.execute(Unknown Source)

at org.apache.commons.dbcp.DelegatingPreparedStatement.execute(DelegatingPreparedStatement.java:169)

at com.ibatis.sqlmap.engine.execution.SqlExecutor.executeUpdate(SqlExecutor.java:84)

at com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.sqlExecuteUpdate(GeneralStatement.java:200)

at com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.executeUpdate(GeneralStatement.java:78)

at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.insert(SqlMapExecutorDelegate.java:442)

at com.ibatis.sqlmap.engine.impl.SqlMapSessionImpl.insert(SqlMapSessionImpl.java:81)

at com.ibatis.sqlmap.engine.impl.SqlMapClientImpl.insert(SqlMapClientImpl.java:58)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)

at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)

at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)

at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)

at java.lang.Thread.run(Unknown Source)


친절하게 에러내용에 나와있네요.

디비 테이블에 설정한 값보다 값이 너무 클경우 발생합니다. 

스크립트 또는 자바쪽에서 유효성검증을 통해 해당크기의 값이 질의에 들어오지 못하게 합시다.