>  Q&A  >  본문

PDO 매개변수화된 쿼리를 사용하여 LIKE 문으로 메서드 만들기

<p>这是我尝试的代码:</p> <pre class="brush:php;toolbar:false;">$query = $database->prepare('SELECT * FROM table WHERE 열 LIKE "?%"'); $query->execute(array('값')); while ($results = $query->fetch()) { 에코 $결과['열']; }</pre></p>
P粉394812277P粉394812277447일 전582

모든 응답(2)나는 대답할 것이다

  • P粉722521204

    P粉7225212042023-08-23 09:18:33

    이름이 지정된 매개변수를 사용하는 경우 MySQL 데이터베이스에서 LIKE进行%부분 일치를 사용하는 방법은 다음과 같습니다.

    WHERE column_name LIKE CONCAT('%', :dangerousstring, '%')

    이름이 지정된 매개변수는 :dangerousstring입니다.

    즉, 사용자 입력과 별도로 쿼리에 명시적으로 이스케이프 처리되지 않은 % 기호를 사용합니다.

    EDIT: Oracle Database의 경우 조인 구문은 조인 연산자 ||를 사용하므로 다음과 같이 단순화됩니다.

    으아아아

    그러나 @bobince가 여기에서 언급했듯이 몇 가지 주의 사항이 있습니다.

    따라서 like와 Parameterization을 결합할 때 주의할 점이 또 있습니다.

    회신하다
    0
  • P粉731861241

    P粉7318612412023-08-23 00:34:09

    게시 후 답변을 찾았습니다:

    으아아아

    회신하다
    0
  • 취소회신하다