ComName은 'a'b'c' "def"j Limited입니다.mysql 삽입 및 업데이트 쿼리 (Java)에서 작은 따옴표 및 큰 따옴표
내가 모든 전에 \를 추가하려고 ' "'및하지만 실행되는 결과 쿼리는 내가 내 내 Comname이 표시되지 않는
"UPDATE empTable SET empId= '25', ComName = 'a'b'c'"def"j Limited where ID=1"
입니다 '와 \는 모든 이전에 존재하지 않는'와 '
여기는 열 값
columnValue.replaceAll("\'", "\\" + "\'");
columnValue.replaceAll("\"", "\\" + "\"");
columnValue=("'" + columnValue + "'");
어떻게 이러한 유형의 문자열을 삽입하기 위해 구성하는 코드이다?
같은 예, *해야 *이 대한의 PreparedStatement를 사용, 다른 모든 단지 SQL 주입 공격을 위해 밖으로 울고있다. 그러나 그로부터 appart, 당신은'replaceAll()'호출이 리턴 값으로 무엇인가를하는 경우에만 유용하다는 것을 기억해야한다. 문자열은 변경되지 않으므로 새 값을 포함하는 새로 반환 된'String'을 무시하면 실제로 그 행에서 아무 것도하지 않았다는 것을 의미합니다. –
나는 여기서 반환 문자열이 중요하다는 것을 잘 알고 있으며 문제는 따옴표로 정확하게 이해하고 있습니다. ( –