次の方法で共有


SqlError クラス

SQL Server から返された警告またはエラーに関する情報を収集します。このクラスは継承できません。

この型のすべてのメンバの一覧については、SqlError メンバ を参照してください。

System.Object
   System.Data.SqlClient.SqlError

<Serializable>
NotInheritable Public Class SqlError
[C#]
[Serializable]
public sealed class SqlError
[C++]
[Serializable]
public __gc __sealed class SqlError
[JScript]
public
   Serializable
class SqlError

スレッドセーフ

この型の public static (Visual Basicでは Shared) のすべてのメンバは、マルチスレッド操作で安全に使用できます。インスタンスのメンバの場合は、スレッドセーフであるとは限りません。

解説

このクラスは、エラーが発生したときに .NET Framework Data Provider for SQL Server によって作成されます。 SqlException クラスが SqlErrorCollection を作成し、このコレクション クラスが SqlError のインスタンスを作成および管理します。

重大度レベルが 10 以下のメッセージは、情報メッセージです。これらは、ユーザーが入力した情報の誤りが原因の問題を示します。重大度レベルが 11 ~ 16 のメッセージは、ユーザーが生成し、修正できます。重要度レベルが 17 ~ 25 のメッセージは、ソフトウェアまたはハードウェアのエラーを示します。レベル 17、18、または 19 のエラーが発生した場合は、作業は続行できますが、一部のステートメントが実行できないことがあります。

重大度レベルが 19 以下のときは、 SqlConnection は開いたままになります。重大度レベルが 20 以上のときは、通常、サーバーは SqlConnection を閉じます。ただし、ユーザーが接続を再び開いて、処理を継続できます。いずれの場合でも、 SqlException は、コマンドを実行しているメソッドによって生成されます。

SQL Server が送信する警告メッセージと情報メッセージについては、『SQL Server ドキュメント』の「トラブルシューティング」を参照してください。

使用例

[Visual Basic, C#, C++] SqlErrorCollection コレクション内の各 SqlError を表示する例を次に示します。

 
Public Sub DisplaySqlErrors(myException As SqlException)
    Dim i As Integer
    For i = 0 To myException.Errors.Count - 1
        MessageBox.Show("Index #" & i & ControlChars.NewLine & _
                        "Error: " & myException.Errors(i).ToString() & ControlChars.NewLine)
    Next i
End Sub 'DisplaySqlErrors

[C#] 
public void DisplaySqlErrors(SqlException myException) 
 {
    for (int i=0; i < myException.Errors.Count; i++)
    {
       MessageBox.Show("Index #" + i + "\n" +
            "Error: " + myException.Errors[i].ToString() + "\n");
    }
 }

[C++] 
public:
void DisplaySqlErrors(SqlException* myException) 
 {
    for (int i=0; i < myException->Errors->Count; i++)
    {
       MessageBox::Show(String::Format( S"Index #{0}\nError: {1}\n",
          __box(i), myException->Errors->Item[i] ));
    }
 }

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

名前空間: System.Data.SqlClient

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET

アセンブリ: System.Data (System.Data.dll 内)

参照

SqlError メンバ | System.Data.SqlClient 名前空間 | SqlErrorCollection | SqlException