복붙노트

[SPRING] sql prepared statement, spring, SimpleJDBCTemplate에서 LIKE 절 사용

SPRING

sql prepared statement, spring, SimpleJDBCTemplate에서 LIKE 절 사용

나는 다음과 같은 SQL 준비 문을 가지고 :

SELECT * FROM video WHERE video_name LIKE ?

봄과 jdbc를 사용하는 Im. 나는 방법을 가지고있다. 여기서 term은 searchterm이고, sjt는 SimpleJdbcTemplate이며, VideoMapper는 RowMapper이고 searchForTermQuery는 위의 문자열이다.

...
return sjt.query(searchForTermQuery, new VideoMapper(), term);

내 표에는이 용어와 일치하는 2 개의 비디오가 있습니다. 그러나 쿼리를 실행할 때 none이 발견됩니다. 나는 빈 목록을 얻는다.

나는 물음표 주위에 %로 놀아 보았지만 나쁜 문법 예외 만 가지고있다.

해결법

  1. ==============================

    1.자리 표시 자 (물음표) 주변이 아닌 값 자체를 %로 둘러 쌀 필요가 있습니다.

    자리 표시 자 (물음표) 주변이 아닌 값 자체를 %로 둘러 쌀 필요가 있습니다.

    그래서:

    return sjt.query(searchForTermQuery, new VideoMapper(), "%" + term + "%");
    
  2. from https://stackoverflow.com/questions/6049256/use-of-like-clause-in-sql-prepared-statement-spring-simplejdbctemplate by cc-by-sa and MIT license