文字

cubrid_execute

(PECL CUBRID >= 8.3.0)

cubrid_executeExecute a prepared SQL statement

说明

resource cubrid_execute ( resource $conn_identifier , string $sql [, int $option ] )
bool cubrid_execute ( resource $request_identifier [, int $option ] )

The cubrid_execute() function is used to execute the given SQL statement. It executes the query by using conn_identifier and SQL, and then returns the request identifier created. It is used for simple execution of query, where the parameter binding is not needed. In addition, the cubrid_execute() function is used to execute the prepared statement by means of cubrid_prepare() and cubrid_bind() . At this time, you need to specify arguments of request_identifier and option.

The option is used to determine whether to get OID after query execution and whether to execute the query in synchronous or asynchronous mode. CUBRID_INCLUDE_OID and CUBRID_ASYNC (or CUBRID_EXEC_QUERY_ALL if you want to execute multiple SQL statements) can be specified by using a bitwise OR operator. If not specified, neither of them isselected. If the flag CUBRID_EXEC_QUERY_ALL is set, a synchronous mode (sync_mode) is used to retrieve query results, and in such cases the following rules are applied:

  • The return value is the result of the first query.
  • If an error occurs in any query, the execution is processed as a failure.
  • In a query composed of q1 q2 q3, if an error occurs in q2 after q1 succeeds the execution, the result of q1 remains valid. That is, the previous successful query executions are not rolled back when an error occurs.
  • If a query is executed successfully, the result of the second query can be obtained using cubrid_next_result() .

If the first argument is request_identifier to execute the cubrid_prepare() function, you can specify an option, CUBRID_ASYNC only.

参数

conn_identifier

Connection identifier.

sql

SQL to be executed.

option

Query execution option CUBRID_INCLUDE_OID, CUBRID_ASYNC, CUBRID_EXEC_QUERY_ALL.

request_identifier

cubrid_prepare() identifier.

返回值

Request identifier, when process is successful and first param is conn_identifier; TRUE , when process is successful and first argument is request_identifier.

FALSE , when process is unsuccessful.

更新日志

版本 说明
8.4.0 Add new option CUBRID_EXEC_QUERY_ALL.

范例

Example #1 cubrid_execute() example

<?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 );
?>

以上例程会输出:

athlete              host_year score      unit 
Phelps Michael       2004      51.25      time 

参见

  • cubrid_prepare() - Prepare a SQL statement for execution
  • cubrid_bind() - Bind variables to a prepared statement as parameters
  • cubrid_next_result() - Get result of next query when executing multiple SQL statements
  • cubrid_close_request() - Close the request handle
  • cubrid_commit() - Commit a transaction
  • cubrid_rollback() - Roll back a transaction
上一篇: 下一篇: