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.
PHP sürücüsünü indirme
Sonraki veri satırını sayısal olarak dizinlenmiş bir dizi, ilişkilendirici dizi veya her ikisi olarak alır.
Sözdizimi
sqlsrv_fetch_array( resource $stmt[, int $fetchType [, row[, ]offset]])
Parametreler
$stmt: Yürütülen bir deyime karşılık gelen deyim kaynağı.
$fetchType [İSTEĞE BAĞLI]: Önceden tanımlanmış bir sabit. Bu parametre, aşağıdaki tabloda listelenen değerlerden birini alabilir:
| Değer | Açıklama |
|---|---|
| SQLSRV_FETCH_NUMERIC | Sonraki veri satırı sayısal bir dizi olarak döndürülür. |
| SQLSRV_FETCH_ASSOC | Sonraki veri satırı ilişkilendirici bir dizi olarak döndürülür. Dizi anahtarları, sonuç kümesindeki sütun adlarıdır. |
| SQLSRV_FETCH_BOTH | Sonraki veri satırı hem sayısal dizi hem de ilişkilendirici dizi olarak döndürülür. Bu varsayılan değerdir. |
satır [İSTEĞE BAĞLI]: Sürüm 1.1'de eklendi. Kaydırılabilir imleç kullanan bir sonuç kümesinde erişilmesi gereken satırı belirten aşağıdaki değerlerden biri. ( Satır belirtildiğinde, varsayılan değeri belirtseniz bile fetchtype açıkça belirtilmelidir.)
- SQLSRV_SCROLL_NEXT
- SQLSRV_SCROLL_PRIOR
- SQLSRV_SCROLL_FIRST
- SQLSRV_SCROLL_LAST
- SQLSRV_SCROLL_ABSOLUTE
- SQLSRV_SCROLL_RELATIVE
Bu değerler hakkında daha fazla bilgi için bkz. İmleç Türü Belirtme ve Satır Seçme. Kaydırılabilir imleç desteği, SQL Server için PHP için Microsoft Sürücüleri'nin 1.1 sürümüne eklendi.
offset [OPTIONAL]: Alınacak satırı belirtmek için SQLSRV_SCROLL_ABSOLUTE ve SQLSRV_SCROLL_RELATIVE ile kullanılır. Sonuç kümesindeki ilk kayıt 0'dır.
Dönüş Değeri
Bir veri satırı alınırsa, bir dizi döndürülür. Alınacak başka satır yoksa null döndürülür. Hata oluşursa false döndürülür.
$fetchType parametresinin değerine bağlı olarak, döndürülen dizi sayısal olarak dizinlenmiş bir dizi, ilişkilendirilebilir bir dizi veya her ikisi de olabilir. Varsayılan olarak, hem sayısal hem de ilişkilendirici anahtarlara sahip bir dizi döndürülür. Döndürülen dizideki bir değerin veri türü varsayılan PHP veri türü olacaktır. Varsayılan PHP veri türleri hakkında bilgi için bkz. Varsayılan PHP Veri Türleri.
Açıklamalar
Adı olmayan bir sütun döndürülürse, dizi öğesinin ilişkilendirilebilir anahtarı boş bir dize ("") olur. Örneğin, bir veritabanı tablosuna değer ekleyen ve sunucu tarafından oluşturulan birincil anahtarı alan bu Transact-SQL deyimini göz önünde bulundurun:
INSERT INTO Production.ProductPhoto (LargePhoto) VALUES (?);
SELECT SCOPE_IDENTITY()
Bu deyimin bölümü tarafından SELECT SCOPE_IDENTITY() döndürülen sonuç kümesi ilişkilendirilebilir bir dizi olarak alınırsa, döndürülen sütunun adı olmadığından döndürülen değerin anahtarı boş bir dize ("") olur. Bunu önlemek için sonucu sayısal bir dizi olarak alabilir veya Transact-SQL deyiminde döndürülen sütun için bir ad belirtebilirsiniz. Aşağıdaki deyim, Transact-SQL'de sütun adı belirtmenin bir yoludur:
SELECT SCOPE_IDENTITY() AS PictureID
Sonuç kümesi adları olmayan birden çok sütun içeriyorsa, son adlandırılmamış sütunun değeri boş dize ("") anahtarına atanır.
İlişkili dizi örneği
Aşağıdaki örnek, bir sonuç kümesinin her satırını ilişkilendirici bir dizi olarak alı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. */
$tsql = "SELECT FirstName, LastName
FROM Person.Contact
WHERE LastName='Alan'";
$stmt = sqlsrv_query( $conn, $tsql);
if( $stmt === false)
{
echo "Error in query preparation/execution.\n";
die( print_r( sqlsrv_errors(), true));
}
/* Retrieve each row as an associative array and display the results.*/
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC))
{
echo $row['LastName'].", ".$row['FirstName']."\n";
}
/* Free statement and connection resources. */
sqlsrv_free_stmt( $stmt);
sqlsrv_close( $conn);
?>
Dizine alınan dizi örneği
Aşağıdaki örnek, sonuç kümesinin her satırını sayısal olarak dizinlenmiş bir dizi olarak alır.
Örnek, belirtilen bir tarihe ve belirtilen değerden daha az stoklanmış miktara (StockQty) sahip ürünler için AdventureWorks veritabanının Purchaseing.PurchaseOrderDetail tablosundan ürün bilgilerini alı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));
}
/* Define the query. */
$tsql = "SELECT ProductID,
UnitPrice,
StockedQty
FROM Purchasing.PurchaseOrderDetail
WHERE StockedQty < 3
AND DueDate='2002-01-29'";
/* Execute the query. */
$stmt = sqlsrv_query( $conn, $tsql);
if ( $stmt )
{
echo "Statement executed.\n";
}
else
{
echo "Error in statement execution.\n";
die( print_r( sqlsrv_errors(), true));
}
/* Iterate through the result set printing a row of data upon each
iteration.*/
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_NUMERIC))
{
echo "ProdID: ".$row[0]."\n";
echo "UnitPrice: ".$row[1]."\n";
echo "StockedQty: ".$row[2]."\n";
echo "-----------------\n";
}
/* Free statement and connection resources. */
sqlsrv_free_stmt( $stmt);
sqlsrv_close( $conn);
?>
sqlsrv_fetch_array işlevi her zaman Varsayılan PHP Veri Türlerine göre veri döndürür. PHP veri türünü belirtme hakkında bilgi için bkz . Nasıl yapılır: PHP Veri Türlerini Belirtme.
Adı olmayan bir alan alınırsa, dizi öğesinin ilişkilendirilebilir anahtarı boş bir dize ("") olur. Daha fazla bilgi için bkz. sqlsrv_fetch_array.
Ayrıca Bkz.
SQLSRV Sürücüsü API Başvurusu
Belgede Kod Örnekleri Hakkında
PHP için Microsoft SQL Server Sürücüleri Programlama Kılavuzu