MySQL PDO 쿼리에서 BindParam과 함께 LIKE를 올바르게 사용
MySQL PDO 쿼리에서 바인딩Param을 사용하여 LIKE 검색을 수행하려는 경우 다음을 사용하는 것이 필수적입니다. 정확성을 보장하기 위한 올바른 구문 결과.
최적화된 구문
bindParam을 사용하여 "a"로 시작하는 사용자 이름을 일치시키려면 올바른 구문은 다음과 같습니다.
$term = "a%";
반대로, 원래 질문 "$term = "'$term%'"에 제공된 구문은 $term 주위에 불필요한 내부 작은따옴표를 배치하므로 올바르지 않습니다. a% 대신 'a%'를 검색하게 됩니다.
bindParam의 역할
bindParam은 SQL에 삽입될 때 문자열 데이터를 자동으로 인용하는 역할을 담당합니다. 따라서 작은따옴표를 수동으로 추가할 필요가 없으며 잘못된 결과가 발생할 수 있습니다. 결과.
수정된 코드
최적화된 구문을 사용하면 수정된 코드는 다음과 같습니다.
$term = "a%"; $sql = "SELECT username FROM `user` WHERE username LIKE :term LIMIT 10"; $core = Connect::getInstance(); $stmt = $core->dbh->prepare($sql); $stmt->bindParam(':term', $term, PDO::PARAM_STR); $stmt->execute(); $data = $stmt->fetchAll();
위 내용은 MySQL PDO 쿼리에서 BindParam과 함께 LIKE를 올바르게 사용하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!