函式名:oci_execute()
適用版本:PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8 (注意:此函式在PHP 8.1.0版本中被廢棄)
用法:oci_execute()函式用於執行一個預編譯的SQL語句或者遊標。
語法:bool oci_execute(resource $statement [, int $mode = OCI_COMMIT_ON_SUCCESS ])
引數:
- $statement:一個OCI語句控制代碼,可以是預編譯的語句或者遊標。
- $mode(可選):指定執行模式。可選值有OCI_COMMIT_ON_SUCCESS、OCI_DEFAULT和OCI_DESCRIBE_ONLY。預設值為OCI_COMMIT_ON_SUCCESS。
返回值:如果執行成功,則返回true。如果執行失敗,則返回false。
示例:
- 執行預編譯的SQL語句:
$conn = oci_connect('username', 'password', 'localhost/XE');
$sql = 'SELECT * FROM employees WHERE department_id = :dept_id';
$stmt = oci_parse($conn, $sql);
$dept_id = 10;
oci_bind_by_name($stmt, ':dept_id', $dept_id);
oci_execute($stmt);
while ($row = oci_fetch_array($stmt, OCI_ASSOC)) {
// 處理結果
}
oci_free_statement($stmt);
oci_close($conn);
- 執行遊標:
$conn = oci_connect('username', 'password', 'localhost/XE');
$cursor = oci_new_cursor($conn);
$stmt = oci_parse($conn, 'BEGIN open :cursor for SELECT * FROM employees; END;');
oci_bind_by_name($stmt, ':cursor', $cursor, -1, OCI_B_CURSOR);
oci_execute($stmt);
oci_execute($cursor);
while ($row = oci_fetch_array($cursor, OCI_ASSOC)) {
// 處理結果
}
oci_free_statement($stmt);
oci_free_statement($cursor);
oci_close($conn);
以上示例中,第一個示例展示瞭如何執行一條預編譯的SQL語句,並使用oci_bind_by_name()函式繫結引數。第二個示例展示瞭如何執行一個遊標,並使用oci_new_cursor()函式建立遊標。
熱門工具排行榜