oci_num_rows

(PHP 5, PECL OCI8 >= 1.1.0)

oci_num_rowsВозвращает количество строк, измененных в процессе выполнения запроса

Описание

int oci_num_rows ( resource $statement )

Возвращает число строк, затронутых в процессе выполнения запроса.

Список параметров

statement

Идентификатор допустимого OCI запроса.

Возвращаемые значения

Возвращает число затронутых строк в виде integer, либо FALSE при ошибке.

Примеры

Пример #1 Пример использования oci_num_rows()

<?php
    
echo "<pre>";
    
$conn oci_connect("scott""tiger");
     
    
$stmt oci_parse($conn"create table emp2 as select * from emp");
    
oci_execute($stmt);
    echo 
oci_num_rows($stmt) . " rows inserted.<br />";
    
oci_free_statement($stmt);
    
    
$stmt oci_parse($conn"delete from emp2");
    
oci_execute($stmtOCI_DEFAULT);
    echo 
oci_num_rows($stmt) . " rows deleted.<br />";
    
oci_commit($conn);
    
oci_free_statement($stmt);
    
    
$stmt oci_parse($conn"drop table emp2");
    
oci_execute($stmt);
    
oci_free_statement($stmt);
    
    
oci_close($conn);
    echo 
"</pre>";
?>

Примечания

Замечание:

Эта функция не возвращает количество строк в результате выражения SELECT! Для запросов SELECT oci_num_rows() вернет количество строк, которые были считаны в буфер с помощью функций oci_fetch*().

Замечание:

В версиях PHP ниже 5.0.0 эта функция называлась ocirowcount(). В PHP 5.0.0 и выше ocirowcount() является алиасом oci_num_rows(), поэтому вы можете продолжать использовать это имя, однако это не рекомендуется.

Коментарии

this function can be used with select statement, and also return affected number of rows. 
But remember this, use this after fetch statement. 
2000-02-16 10:52:50
http://php5.kiev.ua/manual/ru/function.oci-num-rows.html
It appears the easiest workaround if you want to get numrows without moving to the end of the result set is to use:

numrows = OCIFetchStatement(...);
OCIExecute(...);

So that the execute re-executes the query. It's horribly inefficient to query twice, but it works.
2000-08-26 21:59:46
http://php5.kiev.ua/manual/ru/function.oci-num-rows.html
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
Автор:
oci_num_rows() called after running i.e. TRUNCATE query, always returns 0.
2016-12-22 17:21:15
http://php5.kiev.ua/manual/ru/function.oci-num-rows.html
<?php if ( oci_num_rows($result) == false ?>

You can use the snippet above to test out if a select statement returned any rows, it won't do a count but it comes in handy
2018-09-15 04:53:38
http://php5.kiev.ua/manual/ru/function.oci-num-rows.html

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