JDBC 가 정확하게 조회 할 때 문자열 형 매개 변 수 를 검사 처리 합 니 다.
PreparedStatement prsm = co.prepareStatement("select * from user where name= ?");
prsm.setString(1, name);
prsm.executeQuery();
데이터베이스 에 있 는 name 에 대응 하 는 필드 길 이 는 10 으로 정의 되 어 있 으 며, 매개 변수 에 있 는 name 의 길 이 는 11 입 니 다. 이렇게 조 회 를 실행 할 때 유형 이 일치 하지 않 는 문 제 를 보고 합 니 다. 그러나 이 글 을 쓰 면
PreparedStatement prsm = co.prepareStatement("select * from user where name= '"+name+"'");
//prsm.setString(1, name);
prsm.executeQuery();
무사히 통과 할 수 있 을 겁 니 다.아래 것 도 통과 할 수 있다.
PreparedStatement prsm = co.prepareStatement("select * from user where name like ?");
prsm.setString(1, name);
prsm.executeQuery();
(이상 DB2 데이터베이스 만 테스트 했 고 나머지 는 테스트 하지 않 았 습 니 다)
요약: 정확 한 일치 조 회 를 할 때 매개 변수의 길 이 를 주의해 야 합 니 다. 데이터 베 이 스 를 초과 하여 이 필드 에 대한 설정 길 이 를 초과 하지 않 는 것 이 좋 습 니 다. 만약 에 바 텀 방법 으로 Prepared Statement 을 포장 하고 setString 으로 매개 변 수 를 채 우 면 시스템 은 다른 점 을 던 집 니 다!그러나 sql 을 맞 추고 실행 하고 있다 면 이런 문 제 는 존재 하지 않 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
깊이 중첩된 객체를 정확히 일치 검색 - PostgreSQL목차 * 🚀 * 🎯 * 🏁 * 🙏 JSON 객체 예시 따라서 우리의 현재 목표는 "고용주"사용자가 입력한 검색어(이 경우에는 '요리')를 얻고 이 용어와 정확히 일치하는 모든 사용자 프로필을 찾는 것입니다. 즐거운 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.