PDO::exec

(PHP 5 >= 5.1.0, PHP 7, PHP 8, PECL pdo >= 0.1.0)

PDO::exec — SQL 문을 실행하고 영향을 받는 행 수를 반환합니다.


설명

public PDO::exec(string $statement): int|false

PDO::exec()는 단일 함수 호출에서 SQL 문을 실행하여 명령문의 영향을 받는 행 수를 반환합니다.

PDO::exec()는 SELECT 문에서 결과를 반환하지 않습니다. 프로그램 중에 한 번만 발행해야 하는 SELECT 문의 경우 PDO::query() 발행을 고려하십시오. 여러 번 발행해야 하는 명령문의 경우 PDO::prepare()로 PDOStatement 객체를 준비하고 PDOStatement::execute()로 명령문을 실행하십시오.


매개변수

statement
준비하고 실행할 SQL 문.

쿼리 내부의 데이터는 적절하게 이스케이프되어야 합니다.


반환 값

PDO::exec()는 실행한 SQL 문에 의해 수정되거나 삭제된 행 수를 반환합니다. 영향을 받은 행이 없으면 PDO::exec()0을 반환합니다.

경고 이 함수는 부울 거짓을 반환할 수 있지만 거짓으로 평가되는 부울이 아닌 값을 반환할 수도 있습니다. 자세한 내용은 부울 섹션을 참조하세요. 이 함수의 반환 값을 테스트하려면 === 연산자를 사용하십시오.

다음 예제는 PDO::exec()의 반환 값에 잘못 의존합니다. 여기서 0개의 행에 영향을 주는 명령문은 die()를 호출합니다.

                  
<?php
$db->exec() or die(print_r($db->errorInfo(), true)); // incorrect
?>
                  
                

Examples

예제 #1 DELETE 문 실행

WHERE 절이 없는 DELETE 문으로 삭제된 행 수를 계산합니다.

                  
<?php
$dbh = new PDO('odbc:sample', 'db2inst1', 'ibmdb2');

/* Delete all rows from the FRUIT table */
$count = $dbh->exec("DELETE FROM fruit");

/* Return number of rows that were deleted */
print("Deleted $count rows.\n");
?>
                  
                

위의 예는 다음을 출력합니다.

Deleted 1 rows.
                

기타