Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Mevcut satırın belirtilen alanından veri alır. Saha verilerine sırayla erişilmelidir. Örneğin, ikinci alandan gelen verilere erişildikten sonra ilk alandan gelen verilere erişilmez.
Syntax
sqlsrv_get_field( resource $stmt, int $fieldIndex [, int $getAsType])
Parametreler
$stmt: Yürütülmüş bir ifadeye karşılık gelen bir ifade kaynağı.
$fieldIndex: Alınacak alanın indeksi. İndeksler sıfırdan başlar.
$getAsType [ISTEĞE BAĞLI]: Geri dönen veri için PHP veri tipini belirleyen bir sqlsrv sabiti (SQLSRV_PHPTYPE_*). Desteklenen veri türleri hakkında bilgi için Constants (Microsoft Drivers for PHP for SQL Server) bölümüne bakınız. Eğer dövüş türü belirtilmemişse, varsayılan bir PHP tipi döndürülür. Varsayılan PHP tipleri hakkında bilgi için Varsayılan PHP Veri Türleri sayfasına bakınız. PHP veri tiplerini belirleme hakkında bilgi için bkz. Nasıl yapılır: PHP Veri Tiplerini Belirt.
Dönüş Değeri
Saha verileri. Geri dönen verinin PHP veri tipini $getAsType parametresini kullanarak belirleyebilirsiniz. Eğer döndürme veri tipi belirtilmemişse, varsayılan PHP veri tipi geri döner. Varsayılan PHP tipleri hakkında bilgi için Varsayılan PHP Veri Türleri sayfasına bakınız. PHP veri tiplerini belirleme hakkında bilgi için bkz. Nasıl yapılır: PHP Veri Tiplerini Belirt.
Remarks
sqlsrv_fetch ve sqlsrv_get_field kombinasyonu, veriye yalnızca ileri erişim sağlar.
sqlsrv_fetch/sqlsrv_get_field kombinasyonu, bir sonuç kümesi satırının yalnızca bir alanını script belleğe yükler ve PHP dönüş tipi belirtimine izin verir. (PHP dönüş tipini nasıl belirteceği hakkında bilgi için bkz. How to: Specify PHP Data Types.) Bu fonksiyon kombinasyonu, verilerin bir akış olarak alınmasına da olanak tanır. (Veri akışı olarak alınması hakkında bilgi için bkz. SQLSRV Sürücüsünü Kullanarak Veri Akışı Olarak Alınması.)
Example
Aşağıdaki örnek, bir ürün incelemesi ve inceleyicinin adını içeren bir veri satırını alır. Sonuç kümesinden veri almak için sqlsrv_get_field kullanılır. Örnekte SQL Server ve AdventureWorks veritabanının yerel bilgisayarda yüklü olduğu varsayılır. Örnek komut satırından çalıştırıldığında tüm çıkış konsola yazılır.
<?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));
}
/* Set up and execute the query. Note that both ReviewerName and
Comments are of the SQL Server nvarchar type. */
$tsql = "SELECT ReviewerName, Comments
FROM Production.ProductReview
WHERE ProductReviewID=1";
$stmt = sqlsrv_query( $conn, $tsql);
if( $stmt === false )
{
echo "Error in statement preparation/execution.\n";
die( print_r( sqlsrv_errors(), true));
}
/* Make the first row of the result set available for reading. */
if( sqlsrv_fetch( $stmt ) === false )
{
echo "Error in retrieving row.\n";
die( print_r( sqlsrv_errors(), true));
}
/* Note: Fields must be accessed in order.
Get the first field of the row. Note that no return type is
specified. Data will be returned as a string, the default for
a field of type nvarchar.*/
$name = sqlsrv_get_field( $stmt, 0);
echo "$name: ";
/*Get the second field of the row as a stream.
Because the default return type for a nvarchar field is a
string, the return type must be specified as a stream. */
$stream = sqlsrv_get_field( $stmt, 1,
SQLSRV_PHPTYPE_STREAM( SQLSRV_ENC_CHAR));
while( !feof( $stream))
{
$str = fread( $stream, 10000);
echo $str;
}
/* Free the statement and connection resources. */
sqlsrv_free_stmt( $stmt);
sqlsrv_close( $conn);
?>