ibatis/mybatis 모호 일치

원본:https://www.cnblogs.com/gaojing/archive/2013/01/04/2844932.html
잘못된 방법:
select  *  from table1 where name like '%#name#%'

 두 가지 효과 적 인 방법:1)대신$를 사용 합 니 다.이 방법 은 유형 검 사 를 없 애고 문자열 로 연결 하 는 것 이지 만 sql 주입 위험 이 있 을 수 있 습 니 다.
select  *  from table1 where name like '%$name$%'

 2)연결 부 호 를 사용한다.하지만 데이터베이스 마다 방식 이 다르다.
mysql: 
select  *  from table1 where name like concat('%', #name#, '%')

 oracle:
select  *  from table1 where name like '%' || #name# || '%'

 sql server:
 select  *  from table1 where name like '%' + #name# + '%'

좋은 웹페이지 즐겨찾기