Bagikan melalui


sqlsrv_errors

Unduh driver PHP

Mengembalikan informasi kesalahan dan/atau peringatan yang diperluas tentang operasi sqlsrv terakhir yang dilakukan.

Fungsi sqlsrv_errors dapat mengembalikan informasi kesalahan dan/atau peringatan dengan memanggilnya dengan salah satu nilai parameter yang ditentukan di bagian Parameter di bawah ini.

Secara default, peringatan yang dihasilkan pada panggilan ke fungsi sqlsrv diperlakukan sebagai kesalahan; jika peringatan terjadi pada panggilan ke fungsi sqlsrv, fungsi mengembalikan false. Namun, peringatan yang sesuai dengan nilai SQLSTATE 01000, 01001, 01003, dan 01S02 tidak pernah diperlakukan sebagai kesalahan.

Baris kode berikut menonaktifkan perilaku yang disebutkan di atas; peringatan yang dihasilkan oleh panggilan ke fungsi sqlsrv tidak menyebabkan fungsi mengembalikan false:

sqlsrv_configure("WarningsReturnAsErrors", 0);  

Baris kode berikut menginstal ulang perilaku default; peringatan (dengan pengecualian, yang disebutkan di atas) diperlakukan sebagai kesalahan:

sqlsrv_configure("WarningsReturnAsErrors", 1);  

Terlepas dari pengaturannya, peringatan hanya dapat diambil dengan memanggil sqlsrv_errors dengan nilai parameter SQLSRV_ERR_ALL atau SQLSRV_ERR_WARNINGS (lihat bagian Parameter di bawah ini untuk detailnya).

Sintaks

  
sqlsrv_errors( [int $errorsAndOrWarnings] )  

Parameter

$errorsAndOrWarnings[OPSIONAL]: Konstanta yang telah ditentukan sebelumnya. Parameter ini dapat mengambil salah satu nilai yang tercantum dalam tabel berikut:

Nilai Deskripsi
SQLSRV_ERR_ALL Kesalahan dan peringatan yang dihasilkan pada panggilan fungsi sqlsrv terakhir dikembalikan.
SQLSRV_ERR_ERRORS Kesalahan yang dihasilkan pada panggilan fungsi sqlsrv terakhir dikembalikan.
SQLSRV_ERR_WARNINGS Peringatan yang dihasilkan pada panggilan fungsi sqlsrv terakhir dikembalikan.

Jika tidak ada nilai parameter yang disediakan, kesalahan dan peringatan yang dihasilkan oleh panggilan fungsi sqlsrv terakhir dikembalikan.

Tampilkan Nilai

Array array, atau null. Setiap array dalam array yang dikembalikan berisi tiga pasangan kunci-nilai. Tabel berikut mencantumkan setiap kunci dan deskripsinya:

Kunci Deskripsi
SQLSTATE Untuk kesalahan yang berasal dari driver ODBC, SQLSTATE dikembalikan oleh ODBC. Untuk informasi tentang nilai SQLSTATE untuk ODBC, lihat Kode Kesalahan ODBC.

Untuk kesalahan yang berasal dari Driver Microsoft untuk PHP untuk SQL Server, SQLSTATE IMSSP.

Untuk peringatan yang berasal dari Driver Microsoft untuk PHP untuk SQL Server, SQLSTATE 01SSP.
kode Untuk kesalahan yang berasal dari SQL Server, kode kesalahan SQL Server asli.

Untuk kesalahan yang berasal dari driver ODBC, kode kesalahan yang dikembalikan oleh ODBC.

Untuk kesalahan yang berasal dari Driver Microsoft untuk PHP untuk SQL Server, Driver Microsoft untuk PHP untuk kode kesalahan SQL Server. Untuk informasi selengkapnya, lihat Menangani Kesalahan dan Peringatan.
pesan Deskripsi kesalahan.

Nilai array juga dapat diakses dengan kunci numerik 0, 1, dan 2. Jika tidak ada kesalahan atau peringatan yang terjadi, null dikembalikan.

Contoh

Contoh berikut menampilkan kesalahan yang terjadi selama eksekusi pernyataan yang gagal. (Pernyataan gagal karena InvalidColumName bukan nama kolom yang valid dalam tabel yang ditentukan.) Contoh mengasumsikan bahwa SQL Server dan database AdventureWorks diinstal di komputer lokal. Semua output ditulis ke konsol saat contoh dijalankan dari baris perintah.

<?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);  
?>  

Lihat Juga

Referensi API Driver SQLSRV

Tentang Contoh Kode dalam Dokumentasi