봄날을 찾아 떠나는 여정의 끝에서..

2009/05/07

ibatis에서 LIKE 구문 사용하기

분류: ibatis — 동천홍 @ 2:30 am

ibatis  사용중 LIKE 검색에서 %기호를 인식하지 못함…

구글링을 통해 얻은 해결책을 포스팅합니다.MySQL :
SELECT * FROM tbl_name WHERE column_name LIKE “%$username$%”

ORACLE :
SELECT * FROM tbl_name WHERE column_name LIKE  ‘%’ || #username# || ‘%’

SYBASE/SQL SERVER
SELECT * from tbl_name WHERE column_name LIKE  ‘%’ + #username# + ‘%’

이렇게 사용하면 됨~~^^

여기서 변수명을 #로 둘러싸는 것과 $로 둘러싸는것의 차이점을 알 필요가 있다.

#의 경우에는 Prepare Statement로 등록이 된다. 디버그를 찍어봐도 ?로 치환된 이후 값이 대입된다.

하지만 $의 경우 바로 값이 치환된다.

특정 변수가 바로 DB에 입력되므로 보안에 좀더 신경을 써야 할것으로 생각된다.

테마: Silver is the New Black. WordPress.com 제공.

팔로우

모든 새 글을 수신함으로 전달 받으세요.