PDO 준비된 문: 명명된 자리 표시자 재사용
PDO 작업 시 준비된 SQL 쿼리에서 명명된 자리 표시자를 재사용하는 것이 바람직할 수 있습니다. 그러나 이는 PHP의 PDO::prepare 함수의 제한으로 인해 불가능합니다.
PDO 문서에 따르면 "준비된 문에서 동일한 이름의 명명된 매개 변수 표시를 두 번 사용할 수 없습니다." 이는 다음과 같이 쿼리에서 동일한 이름의 자리 표시자를 여러 번 사용하려고 시도하는 경우 두 번째로 나타나는 ":Param" 자리 표시자가 고유한 자리 표시자로 대체됨을 의미합니다. PDO::prepare 함수로 이름을 지정합니다. PDO::bindValue(":Param")를 사용하여 값을 ":Param" 자리 표시자에 바인딩하면 첫 번째 자리 표시자에 대한 값만 설정됩니다. 두 번째 발생은 바인딩되지 않은 상태로 유지되어 쿼리를 실행할 때 오류가 발생합니다.
SELECT :Param FROM Table WHERE Column = :Param따라서 PDO를 사용하여 준비된 SQL 쿼리에서 명명된 자리 표시자를 재사용할 수 없습니다. 쿼리에서 동일한 값을 여러 번 반복해야 하는 경우 위치 자리 표시자(예: "?", ":1" 등)를 사용하거나 다른 자리 표시자 이름을 사용하여 준비된 여러 문을 만들 수 있습니다.
위 내용은 PDO 준비된 문은 명명된 자리 표시자를 재사용할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!