pg_execute

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

pg_execute — 주어진 매개변수로 준비된 명령문을 실행하라는 요청을 보내고 결과를 기다립니다.


설명

pg_execute(PgSql\Connection $connection = ?, string $stmtname, array $params): PgSql\Result|false

주어진 매개변수로 준비된 명령문을 실행하라는 요청을 보내고 결과를 기다립니다.

pg_execute()pg_query_params()와 비슷하지만 쿼리 문자열을 제공하는 대신 이전에 준비된 명령문의 이름을 지정하여 실행할 명령을 지정합니다. 이 기능을 사용하면 반복적으로 사용되는 명령을 실행할 때마다가 아니라 한 번만 구문 분석하고 계획할 수 있습니다. 명령문은 현재 세션에서 이전에 준비되어 있어야 합니다. pg_execute()는 PostgreSQL 7.4 이상 연결에 대해서만 지원됩니다. 이전 버전을 사용할 때 실패합니다.

매개변수는 쿼리 문자열 대신 준비된 명령문의 이름이 제공된다는 점을 제외하면 pg_query_params()와 동일합니다.


매개변수

connection
PgSql\Connection 인스턴스. connection을 지정하지 않으면 기본 연결이 사용됩니다. 기본 연결은 pg_connect() 또는 pg_pconnect()에 의해 만들어진 마지막 연결입니다.
stmtname
실행할 준비된 문의 이름입니다. ""가 지정되면 이름 없는 명령문이 실행됩니다. 이름은 pg_prepare(), pg_send_prepare() 또는 PREPARE SQL 명령을 사용하여 미리 준비되어 있어야 합니다.
params
원래 준비된 쿼리 문자열에서 $1, $2 등의 자리 표시자를 대체할 매개변수 값의 배열입니다. 배열의 요소 수는 자리 표시자의 수와 일치해야 합니다.

경고 요소는 이 함수를 호출하여 문자열로 변환됩니다.


반환 값

성공 시 PgSql\Result 인스턴스, 실패 시 false입니다.


변경 로그

버전 설명
8.1.0 이제 PgSql\Result 인스턴스를 반환합니다. 이전에는 resource가 반환되었습니다.
8.1.0 connection 매개변수는 이제 PgSql\Connection 인스턴스를 필요로 합니다. 이전에는 resource가 필요했습니다.

Examples

예제 #1 pg_execute() 사용

                  
<?php
// Connect to a database named "mary"
$dbconn = pg_connect("dbname=mary");

// Prepare a query for execution
$result = pg_prepare($dbconn, "my_query", 'SELECT * FROM shops WHERE name = $1');

// Execute the prepared query.  Note that it is not necessary to escape
// the string "Joe's Widgets" in any way
$result = pg_execute($dbconn, "my_query", array("Joe's Widgets"));

// Execute the same prepared query, this time with a different parameter
$result = pg_execute($dbconn, "my_query", array("Clothes Clothes Clothes"));

?>
                  
                

기타

  • pg_prepare() - 주어진 매개변수로 준비된 명령문 생성 요청을 제출하고 완료될 때까지 기다립니다.
  • pg_send_prepare() - 완료를 기다리지 않고 주어진 매개변수로 준비된 명령문을 생성하라는 요청을 보냅니다.
  • pg_query_params() - SQL 명령 텍스트와 별도로 매개변수를 전달할 수 있는 기능으로 서버에 명령을 제출하고 결과를 기다립니다.