일반적으로 PHP에서 CUBRID 를 사용한 질의를 사용할때는 다음과 같은 형식으로 사용합니다.
이것을 Prepared statement 를 사용하도록 하면 다음과 같은 형식이 됩니다.
주의 하셔야 할 점은, Prepared statement 를 사용 할 경우, fetch 시 result 값을 인자로 주는 것이 아니고, request handle 을 인자로 주어야 한다는 것입니다.
또한, 사용한 request handle은 반드시 cubrid_close_request 함수로 해제를 해 주어야 합니다.
$qry = "select * from olympic where host_year=1988 and host_nation='Korea' "; $result = cubrid_execute($con, $qry); $row = cubrid_fetch($result); |
이것을 Prepared statement 를 사용하도록 하면 다음과 같은 형식이 됩니다.
$HOST_YEAR = 1988; $HOST_NATION = "Korea" $qry = "select * from olympic where host_year= ? and host_nation= ? "; $req = cubrid_prepare($con, $qry); $res = cubrid_bind($req, 1, $HOST_YEAR, "NUMERIC"); $res = cubrid_bind($req, 2, $HOST_NATION, "STRING"); $result = cubrid_execute($req); $row = cubrid_fetch($req); .... if ($req > 0) cubrid_close_request($req); |
주의 하셔야 할 점은, Prepared statement 를 사용 할 경우, fetch 시 result 값을 인자로 주는 것이 아니고, request handle 을 인자로 주어야 한다는 것입니다.
또한, 사용한 request handle은 반드시 cubrid_close_request 함수로 해제를 해 주어야 합니다.