clob 처리시 오류
- 작성자 :
- 배*근
- 작성일 :
- 2013-07-26 16:39:11
- 조회수 :
- 1,415
- 구분 :
- 실행환경
- 진행상태 :
- 완료
Q
clob 데이터 처리 시 아무리 손을 대보아도 오류가 납니다.
오류 코드는ORA-01461
설정은
context-sqlMap.xml :
<!-- lob Handler -->
<bean id="lobHandler" class="org.springframework.jdbc.support.lob.DefaultLobHandler" lazy-init="true" />
<!-- SqlMap setup for iBATIS Database Layer -->
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="configLocations">
<list>
<value>classpath:/egovframework/sqlmap/config/${Globals.DbType}/*.xml</value>
</list>
</property>
<property name="dataSource" ref="dataSource-${Globals.DbType}"/>
<property name="lobHandler" ref="lobHandler"/>
</bean>
<!-- SqlMap setup for iBATIS Database Layer -->
<bean id="egov.sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="configLocations">
<list>
<value>classpath:/egovframework/sqlmap/config/${Globals.DbType}/*.xml</value>
</list>
</property>
<property name="dataSource" ref="dataSource-${Globals.DbType}"/>
<property name="lobHandler" ref="lobHandler"/>
</bean>
sql-map-config-oracle-admin.xml :
<typeHandler callback="org.springframework.orm.ibatis.support.ClobStringTypeHandler"
jdbcType="CLOB" javaType="java.lang.String" />
<typeHandler callback="org.springframework.orm.ibatis.support.BlobByteArrayTypeHandler"
jdbcType="BLOB" javaType="[B" />
쿼리문에서 insert 시
<insert id="insertBoard" parameterClass="boardVO">
...
#contents# 또는 #contents:CLOB#
이며
드라이버를 ojdbc14-10.2.0.4.0 버전과 ojdbc14-11.2.0 두가지 모두 사용해보았으나 같은 에러를 보입니다.
오류 코드는ORA-01461
설정은
context-sqlMap.xml :
<!-- lob Handler -->
<bean id="lobHandler" class="org.springframework.jdbc.support.lob.DefaultLobHandler" lazy-init="true" />
<!-- SqlMap setup for iBATIS Database Layer -->
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="configLocations">
<list>
<value>classpath:/egovframework/sqlmap/config/${Globals.DbType}/*.xml</value>
</list>
</property>
<property name="dataSource" ref="dataSource-${Globals.DbType}"/>
<property name="lobHandler" ref="lobHandler"/>
</bean>
<!-- SqlMap setup for iBATIS Database Layer -->
<bean id="egov.sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="configLocations">
<list>
<value>classpath:/egovframework/sqlmap/config/${Globals.DbType}/*.xml</value>
</list>
</property>
<property name="dataSource" ref="dataSource-${Globals.DbType}"/>
<property name="lobHandler" ref="lobHandler"/>
</bean>
sql-map-config-oracle-admin.xml :
<typeHandler callback="org.springframework.orm.ibatis.support.ClobStringTypeHandler"
jdbcType="CLOB" javaType="java.lang.String" />
<typeHandler callback="org.springframework.orm.ibatis.support.BlobByteArrayTypeHandler"
jdbcType="BLOB" javaType="[B" />
쿼리문에서 insert 시
<insert id="insertBoard" parameterClass="boardVO">
...
#contents# 또는 #contents:CLOB#
이며
드라이버를 ojdbc14-10.2.0.4.0 버전과 ojdbc14-11.2.0 두가지 모두 사용해보았으나 같은 에러를 보입니다.
A
안녕하세요. 배명근님.
ORA-01461코드는 LOB이 아닌 컬럼에 LOB으로 처리한 경우에 발생될 수 있는 오류로 Insert 시에 컬럼 순서가 잘못되어 있을 수 있습니다.
컬럼 순서와 실제 값을 지정한 property 순서가 맞는지 확인 부탁드립니다.
그럼, 즐거운 하루되십시오.
감사합니다.
ORA-01461코드는 LOB이 아닌 컬럼에 LOB으로 처리한 경우에 발생될 수 있는 오류로 Insert 시에 컬럼 순서가 잘못되어 있을 수 있습니다.
컬럼 순서와 실제 값을 지정한 property 순서가 맞는지 확인 부탁드립니다.
그럼, 즐거운 하루되십시오.
감사합니다.