Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Hämtar antalet fält i en aktiv resultatuppsättning. Denna funktion kan anropas på vilken förberedd sats som helst, före eller efter exekvering.
Syntax
sqlsrv_num_fields( resource $stmt)
Parameters
$stmt: Uttalandet där den målsatta resultatuppsättningen är aktiv.
Returvärde
Ett heltalsvärde som representerar antalet fält i den aktiva resultatmängden. Om ett fel uppstår returneras det booleska värdet falskt .
Example
Följande exempel kör en fråga för att hämta alla fält för de tre översta raderna i HumanResources.Department-tabellen i AdventureWorks-databasen. Funktionen sqlsrv_num_fields bestämmer antalet fält i resultatmängden. Detta gör det möjligt att visa data genom att iterera genom fälten i varje returnerad rad.
Exemplet förutsätter att SQL Server och AdventureWorks-databasen är installerade på den lokala datorn. Alla utdata skrivs till konsolen när exemplet körs från kommandoraden.
<?php
/* Connect to the local server using Windows Authentication and
specify the AdventureWorks database as the database in use. */
$serverName = "(local)";
$connectionInfo = array( "Database"=>"AdventureWorks");
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn === false )
{
echo "Could not connect.\n";
die( print_r( sqlsrv_errors(), true));
}
/* Define and execute the query. */
$tsql = "SELECT TOP (3) * FROM HumanResources.Department";
$stmt = sqlsrv_query($conn, $tsql);
if( $stmt === false)
{
echo "Error in executing query.\n";
die( print_r( sqlsrv_errors(), true));
}
/* Retrieve the number of fields. */
$numFields = sqlsrv_num_fields( $stmt );
/* Iterate through each row of the result set. */
while( sqlsrv_fetch( $stmt ))
{
/* Iterate through the fields of each row. */
for($i = 0; $i < $numFields; $i++)
{
echo sqlsrv_get_field($stmt, $i,
SQLSRV_PHPTYPE_STRING(SQLSRV_ENC_CHAR))." ";
}
echo "\n";
}
/* Free statement and connection resources. */
sqlsrv_free_stmt( $stmt );
sqlsrv_close( $conn );
?>