SqlError Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Raccoglie informazioni rilevanti relative a un avviso o a un errore restituito da SQL Server.
public ref class SqlError sealed
public sealed class SqlError
[System.Serializable]
public sealed class SqlError
type SqlError = class
[<System.Serializable>]
type SqlError = class
Public NotInheritable Class SqlError
- Ereditarietà
-
SqlError
- Attributi
Esempio
Nell'esempio seguente vengono visualizzate ognuna SqlError all'interno dell'insieme SqlErrorCollection .
public static void ShowSqlException(string connectionString)
{
string queryString = "EXECUTE NonExistantStoredProcedure";
using (SqlConnection connection = new SqlConnection(connectionString))
{
SqlCommand command = new SqlCommand(queryString, connection);
try
{
command.Connection.Open();
command.ExecuteNonQuery();
}
catch (SqlException ex)
{
DisplaySqlErrors(ex);
}
}
}
private static void DisplaySqlErrors(SqlException exception)
{
for (int i = 0; i < exception.Errors.Count; i++)
{
Console.WriteLine("Index #" + i + "\n" +
"Error: " + exception.Errors[i].ToString() + "\n");
}
Console.ReadLine();
}
Public Sub ShowSqlException(ByVal connectionString As String)
Dim queryString As String = "EXECUTE NonExistantStoredProcedure"
Using connection As New SqlConnection(connectionString)
Dim command As New SqlCommand(queryString, connection)
Try
command.Connection.Open()
command.ExecuteNonQuery()
Catch ex As SqlException
DisplaySqlErrors(ex)
End Try
End Using
End Sub
Private Sub DisplaySqlErrors(ByVal exception As SqlException)
Dim i As Integer
For i = 0 To exception.Errors.Count - 1
Console.WriteLine("Index #" & i & ControlChars.NewLine & _
"Error: " & exception.Errors(i).ToString() & ControlChars.NewLine)
Next i
Console.ReadLine()
End Sub
Commenti
Questa classe viene creata dal provider di dati .NET Framework per SQL Server quando si verifica un errore. Un'istanza di SqlError viene creata e gestita da SqlErrorCollection, che a sua volta viene creata dalla SqlException classe .
I messaggi con livello di gravità pari o inferiore a 10 sono di tipo informativo e indicano problemi causati da errori nelle informazioni immesse da un utente. I livelli di gravità da 11 a 16 vengono generati dall'utente e possono essere corretti dall'utente. I livelli di gravità da 17 a 25 indicano errori del software o dell'hardware. Quando si verifica un errore di livello 17, 18 o 19, è possibile continuare a funzionare, anche se potrebbe non essere possibile eseguire un'istruzione specifica.
Se il livello di gravità è pari o inferiore a 19, l'istanza di SqlConnection rimane aperta. Quando il valore del livello di gravità è 20 o superiore, in genere il server chiude l'oggetto SqlConnection. L'utente può tuttavia riaprire la connessione e continuare. In entrambi i casi, viene generata un'eccezione SqlException dal metodo che esegue il comando.
Per altre informazioni sugli errori generati da SQL Server, vedere Errori del motore di database. Per altre informazioni sui livelli di gravità, vedere Gravità degli errori del motore di database.
Proprietà
Class |
Ottiene il livello di gravità dell'errore restituito da SQL Server. |
LineNumber |
Ottiene il numero di riga nel batch dei comandi Transact-SQL o nella stored procedure che contiene l'errore. |
Message |
Ottiene il testo che descrive l'errore. |
Number |
Ottiene un numero che identifica il tipo di errore. |
Procedure |
Ottiene il nome della stored procedure o della RPC (Remote Procedure Call) che ha generato l'errore. |
Server |
Ottiene il nome dell'istanza di SQL Server che ha generato l’errore. |
Source |
Ottiene il nome del provider che ha generato l'errore. |
State |
Ottiene il codice di stato univoco per l'errore. |
Metodi
Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
ToString() |
Ottiene il testo completo del messaggio di errore. |