728x90
320x100
문자그대로 적용되기 위해서는 ${ } 를 사용해야 한다
MyBatis에서 작성할 수 있는 기본적인 동적 쿼리는 단순히 WHERE절에 파라미터를 적용한 방법이다.
XML파일에서
<SELECT ID="SEARCH" RESULTMAP="SEARCHVO" PARAMETERTYPE="MAP">
SELECT
*
FROM EMPLOYEE
WHERE
#{PARAM1} = #{PARAM2}
</SELECT>
PARAM1 에서는 동적 컬럼명(MEMBER_ID)을 변수로 받고,
PARAM2 는 해당 컬럼에 포함되는 데이터('TISTORY')를 받아 처리하고자 하였지만,
쿼리의 결과는
SELECT
*
FROM EMPLOYEE
WHERE
'MEMBER_ID' = 'TISTORY'
처럼 동적 컬럼명이 제대로 적용되지 않았다.
#{ } 는 파라미터 값이 작은따옴표(' ') 로 감싸서 들어간다.
작은 따옴표 없이 문자그대로 적용되기 위해서는 ${ } 를 사용해야 한다.
<SELECT ID="SEARCH" RESULTMAP="SEARCHVO" PARAMETERTYPE="MAP">
SELECT
*
FROM EMPLOYEE
WHERE
${PARAM1} = #{PARAM2}
</SELECT>
▼▼▼▼▼▼
SELECT
*
FROM EMPLOYEE
WHERE
MEMBER_ID = 'TISTORY'
728x90
반응형
'잡다한 IT' 카테고리의 다른 글
Access restriction: The constructor 'BASE64Encoder()' is not API 오류 해결하기 (0) | 2024.11.22 |
---|---|
attribute 'version' is missing from element 'web-app'. 오류 해결하기 (0) | 2024.11.14 |
[Linux] df 명령어: 디스크 공간 확인의 필수 도구 (0) | 2024.08.09 |
DWG 파일 열기 (0) | 2024.06.27 |
Synchronize operation failed.svn: E210003: connection refused by the server 오류... (0) | 2024.06.11 |