목록DB/[Mssql] (2)
른록노트
1. 문제상황 현재 mssql을 mybatis로 사용하고 있는데 like문 사용시 대괄호 검색이 제대로 먹히지 않았다. 찾아보니 like문에서 사용하는 agument중에 대괄호가 있었고 치환작업이 필요하다고 생각했다. select * from demotable where name like '%'+#{name}+'%' 2. 해결방법 select * from demotable where name like '%'+ REPLACE(#{searchKeyword},'[','\[') +'%' ESCAPE '\' 동작을 설명하면 먼저 대괄호 agument에 일치하는 값이 없도록 '' (마음대로 1글자) E..
1.1 문제상황 화면에서 checkIdx라는 체크박스를 받아와서 체크한 글만 삭제하는 기능을 만들려고 했는데 TestTable의 idx컬럼은 int 타입이고 checkIdx는 String 타입이라 in을 사용할 수가 없다. 1.2 예시 DELETE TestTable where idx in (#{checkIdx}) checkIdx 의 타입은 String 값은 84,85,86 DELETE TestTable where idx in ("84,85,86") => 에러 발생 2.1 해결 checkIdx의 타입을 String으로 이용해서 해결방법을 찾아보려했는데 정보가 많이 없었고 미래적인 측면에서 String 배열로 변경하여 Dynamic sql foreach를 사용하는게 좋겠다고 판단했다. 2.2 해결방법 먼저 ..