cubrid_execute

설명

cubrid_execute 함수는 주어진 SQL 문을 실행하는 데 사용되며, conn_identifier와 SQL을 이용하여 질의를 실행하고 생성된 요청 식별자를 반환한다. 파라미터 바인딩이 필요 없는 경우에 간단하게 질의를 수행할 때 적절한 방법이다.

cubrid_prepare()와 cubrid_bind()를 통해 prepared statement를 수행할 때도 cubrid_execute를 이용하며, 이때 요구되는 인자는 req_identifieroption이다.

질의 수행 후 행의 OID를 가져올 것인지와 비동기 모드 질의를 수행할지를 결정할 때 option 인수를 사용할 수 있다. CUBRID_INCLUDE_OIDCUBRID_ASYNC를 비트 OR 연산자( | )를 사용해서 지정할 수 있으며, 여러 SQL 문을 수행하려면 CUBRID_EXEC_QUERY_ALL을 지정할 수 있다. 지정하지 않으면 아무것도 선택되지 않는다.

CUBRID_EXEC_QUERY_ALL을 지정하면, 질의 결과를 탐색하는 데 동기화 모드(sync_mode)가 사용되어 다음 규칙이 적용된다.

cubrid_prepare를 수행하기 위한 req_identifier가 첫 번째 인자일 경우, CUBRID_ASYNCCUBRID_EXEC_QUERY_ALL만 옵션으로 사용할 수 있다.

구문

resource cubrid_execute (resource $conn_identifier, string $SQL [, int $option])

bool cubrid_execute (resource $req_identifier[, int $option])

리턴 값
예제

<?php

$conn = cubrid_connect("localhost", 33000, "demodb");

 

$result = cubrid_execute($conn, "SELECT code FROM event WHERE name='100m Butterfly' and gender='M'", CUBRID_ASYNC);

$row = cubrid_fetch_array($result, CUBRID_ASSOC);

$event_code = $row["code"];

 

cubrid_close_request($result);

 

$history_req = cubrid_prepare($conn, "SELECT * FROM history WHERE event_code=?");

cubrid_bind($history_req, 1, $event_code, "number");

cubrid_execute($history_req);

 

printf("%-20s %-9s %-10s %-5s\n", "athlete", "host_year", "score", "unit");

while ($row = cubrid_fetch_array($history_req, CUBRID_ASSOC)) {

    printf("%-20s %-9s %-10s %-5s\n",

        $row["athlete"], $row["host_year"], $row["score"], $row["unit"]);

}

 

cubrid_close_request($history_req);

 

cubrid_disconnect($conn);

?>

 

The above example will output:

 

athlete              host_year score      unit

Phelps Michael       2004      51.25      time

관련 항목