Delicious Bookmark this on Delicious Share on Facebook SlashdotSlashdot It! Digg! Digg



PHP : Function Reference : Microsoft SQL Server Functions : mssql_next_result

mssql_next_result

Move the internal result pointer to the next result (PHP 4 >= 4.0.5, PHP 5, PECL odbtp:1.1.1-1.1.4)
bool mssql_next_result ( resource result_id )

When sending more than one SQL statement to the server or executing a stored procedure with multiple results, it will cause the server to return multiple result sets. This function will test for additional results available form the server. If an additional result set exists it will free the existing result set and prepare to fetch the rows from the new result set.

Parameters

result_id

The result resource that is being evaluated. This result comes from a call to mssql_query().

Return Values

Returns TRUE if an additional result set was available or FALSE otherwise.

Examples

Example 1377. mssql_next_result() example

<?php
$link
= mssql_connect("localhost", "userid", "secret");
mssql_select_db("MyDB", $link);
$sql = "Select * from table1 select * from table2";
$rs = mssql_query($sql, $link);
do {
   while (
$row = mssql_fetch_row($rs)) {
   }
} while (
mssql_next_result($rs));
mssql_free_result($rs);
mssql_close($link);
?>


Examples ( Source code ) » mssql_next_result

<?php
// Connect MSSQL
$link mssql_connect('myserver\SQLEXPRESS''sa''phpPassw');
mssql_select_db('php'$link);

// Send a query to MSSQL
$sql 'SELECT [name], [age] FROM [php].[dbo].[persons]';
$query mssql_query($sql$link);

// Iterate through returned records
do
{
    while(
$row mssql_fetch_row($query))
    {
        
// Handle record ...
    
}
}
while(
mssql_next_result($query));

// Clean up
mssql_free_result($query);
mssql_close($link);
?>

Code Examples / Notes » mssql_next_result

mail_umesh

you cant return multiple values from store proc but you can return multiple resultset, so you can use mssql_next_result()
eg..
   $stmt =  mssql_init("AuthLoginUser", $objDBH);
   mssql_bind($stmt,"@LoginUser",$LoginUser,SQLVARCHAR);
   mssql_bind($stmt,"@Password",$strNewPassword,SQLVARCHAR);
   mssql_bind($stmt,"@SessionId",$SessionId,SQLVARCHAR);
   //mssql_bind($stmt,"@ReturnVal",$ReturnVal,SQLVARCHAR,True);
   $rs=mssql_execute($stmt);
   do {
       while ($row = mssql_fetch_row($rs)) {
           echo "$row[0] -- $row[1]
";
       }
   } while (mssql_next_result($rs));
   mssql_free_result($rs);


m1tk4

This function does not exist as a Sybase (Sybase-CT) alias, so if you have PHP+FreeTDS||Sybase as a MSSQL client on Unix platform, it will not work.

gagarin

It seems that mssql_next_result does not work with result sets returned by stored procedures.

Change Language


Follow Navioo On Twitter
mssql_bind
mssql_close
mssql_connect
mssql_data_seek
mssql_execute
mssql_fetch_array
mssql_fetch_assoc
mssql_fetch_batch
mssql_fetch_field
mssql_fetch_object
mssql_fetch_row
mssql_field_length
mssql_field_name
mssql_field_seek
mssql_field_type
mssql_free_result
mssql_free_statement
mssql_get_last_message
mssql_guid_string
mssql_init
mssql_min_error_severity
mssql_min_message_severity
mssql_next_result
mssql_num_fields
mssql_num_rows
mssql_pconnect
mssql_query
mssql_result
mssql_rows_affected
mssql_select_db
eXTReMe Tracker