downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

mssql_num_fields> <mssql_min_message_severity
[edit] Last updated: Sat, 07 Jan 2012

view this page in

mssql_next_result

(PHP 4 >= 4.0.5, PHP 5, PECL odbtp >= 1.1.1)

mssql_next_resultMove the internal result pointer to the next result

설명

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.

인수

result_id

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

반환값

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

예제

Example #1 mssql_next_result() example

<?php
// Connect to MSSQL and select the database
$link mssql_connect('MANGO\SQLEXPRESS''sa''phpfi');
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);
?>



mssql_num_fields> <mssql_min_message_severity
[edit] Last updated: Sat, 07 Jan 2012
 
add a note add a note User Contributed Notes mssql_next_result
il cartolaio 16-Nov-2010 06:47
As of today, this function is defined in FreeTDS (at least in the CVS version) and works perfectly with stored procedures.

Useful to avoid outer joins.
itsacon at itsacon dot net 25-Nov-2008 09:32
When retrieving multiple resultsets from a stored procedure, don't call mssql_free_statement on the statement resource, as any resultsets not yet retrieved will be lost, and mssql_next_result will report no more result sets were available.
mail_umesh at yahoo dot com 07-Dec-2003 10:40
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]<BR>";
        }
    } while (mssql_next_result($rs));
    mssql_free_result($rs);
gagarin[at]i-dep.com 09-Dec-2002 01:39
It seems that mssql_next_result does not work with result sets returned by stored procedures.
m1tk4 at hotmail dot com 28-Jun-2002 02:43
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.

 
show source | credits | stats | sitemap | contact | advertising | mirror sites