oci_num_rows

(PHP 5, PECL OCI8 >= 1.1.0)

oci_num_rowsReturns number of rows affected during statement execution

Description

int oci_num_rows ( resource $statement )

Gets the number of rows affected during statement execution.

Parameters

statement

A valid OCI statement identifier.

Return Values

Returns the number of rows affected as an integer, or FALSE on errors.

Examples

Example #1 oci_num_rows() example

<?php

$conn 
oci_connect("hr""hrpwd""localhost/XE");
if (!
$conn) {
    
$m oci_error();
    
trigger_error(htmlentities($m['message']), E_USER_ERROR);
}

$stid oci_parse($conn"create table emp2 as select * from employees");
oci_execute($stid);
echo 
oci_num_rows($stid) . " rows inserted.<br />\n";
oci_free_statement($stid);

$stid oci_parse($conn"delete from emp2");
oci_execute($stidOCI_DEFAULT);
echo 
oci_num_rows($stid) . " rows deleted.<br />\n";
oci_commit($conn);
oci_free_statement($stid);

$stid oci_parse($conn"drop table emp2");
oci_execute($stid);
oci_free_statement($stid);

oci_close($conn);

?>

Notes

Note:

This function does not return number of rows selected! For SELECT statements this function will return the number of rows, that were fetched to the buffer with oci_fetch*() functions.

Note:

In PHP versions before 5.0.0 you must use ocirowcount() instead. This name still can be used, it was left as alias of oci_num_rows() for downwards compatability. This, however, is deprecated and not recommended.

Коментарии

If you want to return te number of rows without fetching all data it might by more efficient to use this code (correct me if I'm wrong):

$sql_query = 'SELECT COUNT(*) AS NUMBER_OF_ROWS FROM (' . $your_query . ')';

$stmt= oci_parse($conn, $sql_query);

oci_define_by_name($stmt, 'NUMBER_OF_ROWS', $number_of_rows);

oci_execute($stmt);

oci_fetch($stmt);

echo $number_of_rows;
2010-04-20 05:51:05
http://php5.kiev.ua/manual/ru/function.oci-num-rows.html
The `oci_num_rows()` function is used to retrieve the number of rows affected or returned by a query executed with Oracle Database using the OCI8 extension. Here's an explanation of how `oci_num_rows()` works:

1. Syntax:
  php
   oci_num_rows($statement);

2. Parameters:
  $statement: This parameter represents the Oracle statement handle returned by `oci_parse()` and executed using `oci_execute()`. It refers to the executed query or statement for which you want to get the number of rows.

3. Return Value:
 The `oci_num_rows()` function returns the number of rows affected or returned by the executed query. It returns an integer value representing the count of rows.

4. Usage:
 After executing a query with `oci_execute()`, you can use `oci_num_rows()` to determine the number of rows affected or returned by the query.
   - It is commonly used in scenarios where you need to know the count of rows for result sets or the count of affected rows after an INSERT, UPDATE, or DELETE operation.

example that demonstrates the usage of `oci_num_rows()`:

php
$sql = "SELECT * FROM employees";
$statement = oci_parse($connection, $sql);
oci_execute($statement);

// Get the number of rows returned by the query
$numRows = oci_num_rows($statement);
echo "Number of rows: " . $numRows;

this example, we execute a SELECT query to fetch records from the "employees" table. After executing the query with `oci_execute()`, we use `oci_num_rows()` to retrieve the number of rows returned by the query and store it in the `$numRows` variable. Finally, we echo the count of rows.
2023-07-07 11:57:47
http://php5.kiev.ua/manual/ru/function.oci-num-rows.html

    Поддержать сайт на родительском проекте КГБ