sqlsrv_num_rows

PHP-stuurprogramma downloaden

Hiermee wordt het aantal rijen in een resultatenset gerapporteerd.

Syntax

  
sqlsrv_num_rows( resource $stmt )  

Parameters

$stmt: De resultaatset waarvoor de rijen worden geteld.

Retourwaarde

onwaar als er een fout was bij het berekenen van het aantal rijen. Anders geeft het aantal rijen in de resultaatset terug.

Remarks

sqlsrv_num_rows vereist een client-side, statische of keyset-cursor, en geeft false terug als je een forward cursor of een dynamische cursor gebruikt. (Een voorwaartse cursor is de standaard.) Voor meer informatie over cursors, zie sqlsrv_query en cursortypes (SQLSRV Driver).

Example

<?php  
   $server = "server_name";  
   $conn = sqlsrv_connect( $server, array( 'Database' => 'Northwind' ) );  
  
   $stmt = sqlsrv_query( $conn, "select * from orders where CustomerID = 'VINET'" , array(), array( "Scrollable" => SQLSRV_CURSOR_KEYSET ));  
  
   $row_count = sqlsrv_num_rows( $stmt );  
  
   if ($row_count === false)  
      echo "\nerror\n";  
   else if ($row_count >=0)  
      echo "\n$row_count\n";  
?>  

Het volgende voorbeeld laat zien dat wanneer er meer dan één resultaatset is (een batchquery), het aantal rijen alleen beschikbaar is wanneer je een client-side cursor gebruikt.

<?php  
$serverName = "(local)";  
$connectionInfo = array("Database"=>"AdventureWorks");  
$conn = sqlsrv_connect( $serverName, $connectionInfo);  
  
$tsql = "select * from HumanResources.Department";  
  
// Client-side cursor and batch statements  
$tsql = "select top 2 * from HumanResources.Employee;Select top 3 * from HumanResources.EmployeeAddress";  
  
// works  
$stmt = sqlsrv_query($conn, $tsql, array(), array("Scrollable"=>"buffered"));  
  
// fails  
// $stmt = sqlsrv_query($conn, $tsql);  
// $stmt = sqlsrv_query($conn, $tsql, array(), array("Scrollable"=>"forward"));  
// $stmt = sqlsrv_query($conn, $tsql, array(), array("Scrollable"=>"static"));  
// $stmt = sqlsrv_query($conn, $tsql, array(), array("Scrollable"=>"keyset"));  
// $stmt = sqlsrv_query($conn, $tsql, array(), array("Scrollable"=>"dynamic"));  
  
$row_count = sqlsrv_num_rows( $stmt );  
echo "\nRow count for first result set = $row_count\n";  
  
sqlsrv_next_result($stmt);  
  
$row_count = sqlsrv_num_rows( $stmt );  
echo "\nRow count for second result set = $row_count\n";  
?>