PDO의 쿼리() 및 실행(): 상호 교환 가능합니까, 아니면 구별됩니까?

Barbara Streisand
풀어 주다: 2024-10-30 06:10:02
원래의
874명이 탐색했습니다.

  PDO's query() and execute(): Interchangeable or Distinct?

PDO의 query()와 Execution() 메소드 비교

질문:

PDO의 query()와 Execution( ) 방법은 본질적으로 상호 교환 가능합니까, 아니면 크게 다른가요?

답변:

두 방법 모두 데이터베이스 쿼리를 수행하지만 몇 가지 근본적인 차이점이 있습니다.

query() vsexecute()

  • query()는 매개변수화된 데이터 없이 일반 SQL 문을 실행합니다.
  • execute () 이스케이프나 인용을 방지하기 위해 매개변수를 바인딩할 수 있는 준비된 문을 실행합니다. 이 방법은 또한 반복 쿼리에 대한 성능 이점을 제공합니다.

준비된 명령문 예:

<code class="php">$sth = $dbh->prepare('SELECT name, colour, calories FROM fruit
    WHERE calories < :calories AND colour = :colour');
$sth->bindParam(':calories', $calories);
$sth->bindParam(':colour', $colour);
$sth->execute();</code>
로그인 후 복사

이 경우 $calours 및 $colour 변수는 쿼리에서 분리되므로 이스케이프하거나 따옴표로 묶을 필요가 없습니다.

권장 사항:

보안 강화를 위해 준비된 문을 실행( ). 이를 통해 사용자 제공 데이터가 SQL 주입 공격에 취약하지 않게 됩니다.

위 내용은 PDO의 쿼리() 및 실행(): 상호 교환 가능합니까, 아니면 구별됩니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!