ibatis-user-java mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From joson yu <yuqian...@gmail.com>
Subject Re: db2 -302 error
Date Tue, 23 Mar 2010 06:28:32 GMT
ok. i have got it.  thank you.
but i want ask one question more.
the root of the problem is caused by JDBC or DB2.
if i dont use a parameter marker  when i use ibatis ,i think it is not a
good idea for the security reason.  or just catch the exception and ignore
it?
and can you give some advice for this situation.

really thank you.


2010/3/23 Mario Ds Briggs <mario.briggs@in.ibm.com>

> ok... i will try to explain 1 more time.
>
> In DB2, if you use a parameter marker in the SQL query, then DB2  WILL
> 'constraint the paramter value to the db column length constraint'. If you
> dont use a parameter marker, then DB2 will NOT 'constraint the value to the
> db column length '
>
> cheers
> Mario
>
>
>
>
>             joson yu
>             <yuqianguo@gmail.
>             com>                                                       To
>                                       user-java@ibatis.apache.org
>              03/23/2010 11:04                                           cc
>              AM
>                                                                   Subject
>                                       Re: db2 -302 error
>             Please respond to
>             user-java@ibatis.
>                apache.org
>
>
>
>
>
>
>
> maybe i am not discribe clearly.
> the parameter's length is longger than the column length .but the the same
> sql.  in the db2 client is fine,but use ibatis it throw exception.
> the db constraint the column's lenth but don't constraint the  condition
> parameter's.but in ibatis ,it runs like it also constraint the parameter's.
>
> i don't know does i show the problem clear.
>
>
> 2010/3/23 Mario Ds Briggs <mario.briggs@in.ibm.com>
>  Hi Joson,
>
>  I guess you figured the error out yourself i.e. length of the parameter
>  value is > than the column length (30).   It works fine in db2 client
> since
>  there you are not using a parameter
>  marker but have value as a literal inside the SQL statement string.
>
>  cheers
>  Mario                 joson yu             <yuqianguo@gmail.
>  com>
>  To                                       user-java@ibatis.apache.org
>              03/23/2010 07:44
>  cc
>  AM
>  Subject                                       Re: db2 -302
>  error             Please respond to
>  user-java@ibatis.                apache.org
>
>
>
>
>
>
>
>  ps:in the sql the parameter should passed in with String  that is longger
>  than 30.
>
>  2010/3/23 joson yu <yuqianguo@gmail.com>  there is an error happend in my
>  situation.and want to know is there  anyone else meet this problem.  i use
>  ibatis2.  the database is used  db2.  sql: select [columns] from  tables
>  where column1 = ''.  and the column1 is varchar type and it's length is
>  30.  the sql is execute fine in the db2 client. but when i use ibatis
>  to  execute it .it throw exception ,blow is all exception
>  info.        org.springframework.dao.DataIntegrityViolationException:
>  SqlMapClient  operation; SQL [];  --- The error occurred
>  in  com/hcss/fy/business/resource/ccr/model/HCSS_CCR_INFO_SqlMap.xml.  ---
>  The error occurred while applying a parameter map.  --- Check the
>  load_inheritor_baseinfo-InlineParameterMap.  --- Check the statement
>  (query failed).  --- Cause: com.ibm.db2.jcc.a.jm: DB2 SQL Error:
>  SQLCODE=-302,  SQLSTATE=22001, SQLERRMC=null, DRIVER=3.50.151; nested
>  exception is  com.ibatis.common.jdbc.exception.NestedSQLException:  ---
> The
>  error occurred
>  in  com/hcss/fy/business/resource/ccr/model/HCSS_CCR_INFO_SqlMap.xml.  ---
>  The error occurred while applying a parameter map.  --- Check the
>  load_inheritor_baseinfo-InlineParameterMap.  --- Check the statement
>  (query failed).  --- Cause: com.ibm.db2.jcc.a.jm: DB2 SQL Error:
>  SQLCODE=-302,  SQLSTATE=22001, SQLERRMC=null, DRIVER=3.50.151
>  at
>  org.springframework.jdbc.support.SQLStateSQLExceptionTranslator.translate(SQLStateSQLExceptionTranslator.java:114)
>      at
>  org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.translate(SQLErrorCodeSQLExceptionTranslator.java:322)
>      at
>  org.springframework.orm.ibatis.SqlMapClientTemplate.execute(SqlMapClientTemplate.java:212)
>      at
>  org.springframework.orm.ibatis.SqlMapClientTemplate.queryForObject(SqlMapClientTemplate.java:271)
>      at
>  com.hcss.fy.business.resource.ccr.dao.impl.InheritorDaoImpl.loadInheritor(InheritorDaoImpl.java:48)
>      at
>  com.hcss.fy.business.resource.ccr.dao.InheritorDaoTest.loadInheritor(InheritorDaoTest.java:57)
>      at
>  sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>  at
>  sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>      at
>  sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>      at
>  java.lang.reflect.Method.invoke(Method.java:597)
>  at
>  org.springframework.test.context.junit4.SpringTestMethod.invoke(SpringTestMethod.java:160)
>      at
>  org.springframework.test.context.junit4.SpringMethodRoadie.runTestMethod(SpringMethodRoadie.java:233)
>      at
>  org.springframework.test.context.junit4.SpringMethodRoadie$RunBeforesThenTestThenAfters.run(SpringMethodRoadie.java:333)
>      at
>  org.springframework.test.context.junit4.SpringMethodRoadie.runWithRepetitions(SpringMethodRoadie.java:217)
>      at
>  org.springframework.test.context.junit4.SpringMethodRoadie.runTest(SpringMethodRoadie.java:197)
>      at
>  org.springframework.test.context.junit4.SpringMethodRoadie.run(SpringMethodRoadie.java:143)
>      at
>  org.springframework.test.context.junit4.SpringJUnit4ClassRunner.invokeTestMethod(SpringJUnit4ClassRunner.java:160)
>      at
>  org.junit.internal.runners.JUnit4ClassRunner.runMethods(JUnit4ClassRunner.java:59)
>      at
>  org.junit.internal.runners.JUnit4ClassRunner$1.run(JUnit4ClassRunner.java:52)
>      at
>  org.junit.internal.runners.ClassRoadie.runUnprotected(ClassRoadie.java:34)
>      at
>  org.junit.internal.runners.ClassRoadie.runProtected(ClassRoadie.java:44)
>
>
>
>
>  ---------------------------------------------------------------------
>  To unsubscribe, e-mail: user-java-unsubscribe@ibatis.apache.org
>  For additional commands, e-mail: user-java-help@ibatis.apache.org
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-java-unsubscribe@ibatis.apache.org
> For additional commands, e-mail: user-java-help@ibatis.apache.org
>
>

Mime
View raw message