반응형
VO 에 있는 값을 넘겨받아 sql 쿼리로 사용할 경우,
테이블 명에 #을 붙여주면 에러가 발생하고 칼럼 명에 붙이면 데이터가 나오지 않는다.
SELECT ? FROM LP_PA_CBND
Parameters: [PNU]
$을 사용하면 값이 들어간 형태로 쿼리문이 만들어지기 때문에 '' 가 붙지 않는다.
반면 #을 사용하면 쿼리에서 '?' 형태로 파라미터를 받기 대문에 String 형으로 '' 가 붙게된다.
*** 해결방법
칼럼명 or 테이블명이 동적으로 바뀔땐 $를 붙여준다.
1 2 3 4 5 6 | <select id="common.selectAttFld" parameterClass="fldVO" resultClass="fldVO"> SELECT #CODE# FROM $TABLE_NM$ </select> | cs |
728x90
반응형
'Database' 카테고리의 다른 글
MyBatis 반복문(foreach) + String[] 배열(array) / iBatis 반복문(iterate) + 동적 쿼리(dynamic) (0) | 2017.12.28 |
---|---|
빅데이터 - R 사용법 (0) | 2017.12.20 |
[iBatis] 쿼리문 내 부등호 사용 (0) | 2017.12.19 |
[Oracle] JOIN 유의점 (0) | 2017.12.19 |
[Oracle] 시퀀스 생성 (0) | 2017.12.19 |
댓글