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.
Son sqlsrv işlemiyle ilgili genişletilmiş hata ve/veya uyarı bilgisini döndürür.
sqlsrv_errors fonksiyonu, aşağıdaki Parametreler bölümünde belirtilen parametre değerlerinden biriyle hata ve/veya uyarı bilgisini döndürebilir.
Varsayılan olarak, herhangi bir sqlsrv fonksiyonuna yapılan çağrıda oluşturulan uyarılar hata olarak kabul edilir; Bir SQLSRV fonksiyonuna yapılan çağrıda uyarı oluşursa, fonksiyon yanlış döner. Ancak, 01000, 01001, 01003 ve 01S02 gibi SQLSTATE değerlerine karşılık gelen uyarılar asla hata olarak kabul edilmez.
Aşağıdaki kod satırı yukarıda bahsedilen davranışı kapatır; SQLSRV fonksiyonuna yapılan çağrıyla oluşturulan bir uyarı, fonksiyonun false döndürmesine neden olmaz:
sqlsrv_configure("WarningsReturnAsErrors", 0);
Aşağıdaki kod satırı varsayılan davranışı geri getirir; uyarılar (yukarıda belirtilen istisnalar dışında) hata olarak kabul edilir:
sqlsrv_configure("WarningsReturnAsErrors", 1);
Ayar ne olursa olsun, uyarılar yalnızca SQLSRV_ERR_ALL veya SQLSRV_ERR_WARNINGS parametre değeriyle sqlsrv_errors çağrılarak alınabilir (detaylar için aşağıdaki Parametreler bölümüne bakınız).
Syntax
sqlsrv_errors( [int $errorsAndOrWarnings] )
Parametreler
$errorsAndOrWarnings[ISTEĞE BAĞLI]: Önceden tanımlanmış bir sabit. Bu parametre, aşağıdaki tabloda listelenen değerlerden birini alabilir:
| Değer | Description |
|---|---|
| SQLSRV_ERR_ALL | Son sqlsrv işlev çağrısında oluşturulan hatalar ve uyarılar döndürülür. |
| SQLSRV_ERR_ERRORS | Son sqlsrv işlev çağrısında oluşturulan hatalar döndürülür. |
| SQLSRV_ERR_WARNINGS | Son sqlsrv işlev çağrısında oluşturulan uyarılar döndürülür. |
Eğer herhangi bir parametre değeri sağlanmazsa, son sqlsrv fonksiyon çağrısında oluşan hem hatalar hem de uyarılar döner.
Dönüş Değeri
Bir dizi dizi, ya da null. Geri dönen dizideki her dizi, üç anahtar-değer çifti içerir. Aşağıdaki tablo her anahtarı ve açıklamasını listeler:
| Key | Description |
|---|---|
| SQLSTATE | ODBC sürücüsünden kaynaklanan hatalar için SQLSTATE ODBC tarafından döndürülür. ODBC için SQLSTATE değerleri hakkında bilgi için ODBC Hata Kodları sayfasına bakınız. IMSSP'nin bir SQLSTATE'i olan SQL Server için Microsoft PHP Sürücülerinden kaynaklanan hatalar için. SQL Server için PHP için Microsoft Drivers (PHP için 01SSP) kaynaklı uyarılar için. |
| code | SQL Server'dan kaynaklanan hatalar için, yerel SQL Server hata kodu. ODBC sürücüsünden kaynaklanan hatalar için, ODBC tarafından döndürülen hata kodu. SQL Server için PHP için Microsoft Sürücülerinden kaynaklanan hatalar için, Microsoft Drivers for PHP for SQL Server hata kodu için geçerlidir. Daha fazla bilgi için bkz . Hataları ve Uyarıları İşleme. |
| message | Hatanın tanımı. |
Dizi değerleri ayrıca 0, 1 ve 2 numaralı anahtarlarla da erişilebilir. Hata veya uyarı olmazsa, null geri döner.
Example
Aşağıdaki örnek, başarısız bir ifade çalıştırma sırasında meydana gelen hataları gösterir. (Bu ifade başarısız olur çünkü InvalidColumName belirtilen tabloda geçerli bir sütun adı değildir.) Örnek, SQL Server ve AdventureWorks veritabanının yerel bilgisayara yüklendiğini varsayar. Ö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 a query to select an invalid column name. */
$tsql = "SELECT InvalidColumnName FROM Sales.SalesOrderDetail";
/* Attempt execution. */
/* Execution will fail because of the invalid column name. */
$stmt = sqlsrv_query( $conn, $tsql);
if( $stmt === false )
{
if( ($errors = sqlsrv_errors() ) != null)
{
foreach( $errors as $error)
{
echo "SQLSTATE: ".$error[ 'SQLSTATE']."\n";
echo "code: ".$error[ 'code']."\n";
echo "message: ".$error[ 'message']."\n";
}
}
}
/* Free connection resources */
sqlsrv_close( $conn);
?>