SqlCommand クラスとは? わかりやすく解説

SqlCommand クラス

SQL Server データベースに対して実行する Transact-SQL ステートメントまたはストアド プロシージャ表します。このクラス継承できません。

名前空間: System.Data.SqlClient
アセンブリ: System.Data (system.data.dll 内)
構文構文

Public NotInheritable Class
 SqlCommand
    Inherits DbCommand
    Implements ICloneable
public sealed class SqlCommand : DbCommand,
 ICloneable
public ref class SqlCommand sealed : public
 DbCommand, ICloneable
public final class SqlCommand extends DbCommand
 implements ICloneable
public final class SqlCommand extends
 DbCommand implements ICloneable
解説解説

SqlCommandインスタンス作成すると、読み書き可能プロパティ初期値設定されます。これらの初期値一覧については、SqlCommand コンストラクタトピック参照してください

SqlCommand には、SQL Server データベースコマンド実行するための、次のメソッドあります

項目

説明

BeginExecuteNonQuery

この SqlCommand によって定義されTransact-SQL ステートメントまたはストアド プロシージャ非同期実行開始します通常INSERTDELETEUPDATESET ステートメントなどのコマンド実行されます。BeginExecuteNonQuery は必ず EndExecuteNonQuery とペア呼び出し通常スレッドごとに、操作完了させる必要があります

BeginExecuteReader

この SqlCommand によって定義されTransact-SQL ステートメントまたはストアド プロシージャ非同期実行開始しサーバーから 1 つまたは複数結果取得しますBeginExecuteReader は必ず EndExecuteReader とペア呼び出し通常スレッドごとに、操作完了させる必要があります

BeginExecuteXmlReader

この SqlCommand によって定義されTransact-SQL ステートメントまたはストアド プロシージャ非同期実行開始しますBeginExecuteXmlReaderEndExecuteXmlReaderペア呼び出す必要があります。これによって、通常スレッドごとに操作完了しXmlReader オブジェクト取得できます

ExecuteReader

行を返すコマンド実行しますパフォーマンス高めるために、ExecuteReaderTransact-SQL sp_executesql システム ストアド プロシージャ使用してコマンド呼び出します。そのため、Transact-SQL SET ステートメントなどのコマンド実行ExecuteReader使用すると、期待した効果得られないことがあります

ExecuteNonQuery

Transact-SQLINSERT、DELELE、UPDATESET の各ステートメントなどのコマンド実行します

ExecuteScalar

データベースから単一の値 (集計値など) を取得します

ExecuteXmlReader

CommandText を Connection送信しXmlReader オブジェクト構築します

CommandText プロパティリセットして、SqlCommand オブジェクト再利用できます。ただし、新規コマンドまたは以前コマンド実行する前に、SqlDataReader を閉じる必要があります

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

使用例使用例

SqlConnectionSqlCommand、および SqlDataReader作成する例を次に示します。この例では、データ読み取りコンソール出力します最後に、この例では SqlDataReader閉じてから、SqlConnection閉じます

Public Sub ReadOrderData(ByVal
 connectionString As String)
    Dim queryString As String
 = _
        "SELECT OrderID, CustomerID FROM dbo.Orders;"
    Using connection As New SqlConnection(connectionString)
        Dim command As New
 SqlCommand(queryString, connection)
        connection.Open()
        Dim reader As SqlDataReader = command.ExecuteReader()
        Try
            While reader.Read()
                Console.WriteLine(String.Format("{0},
 {1}", _
                    reader(0), reader(1)))
            End While
        Finally
            ' Always call Close when done reading.
            reader.Close()
        End Try
    End Using
End Sub
private static void ReadOrderData(string
 connectionString)
{
    string queryString = 
        "SELECT OrderID, CustomerID FROM dbo.Orders;";
    using (SqlConnection connection = new SqlConnection(
               connectionString))
    {
        SqlCommand command = new SqlCommand(
            queryString, connection);
        connection.Open();
        SqlDataReader reader = command.ExecuteReader();
        try
        {
            while (reader.Read())
            {
                Console.WriteLine(String.Format("{0}, {1}",
                    reader[0], reader[1]));
            }
        }
        finally
        {
            // Always call Close when done reading.
            reader.Close();
        }
    }
}
継承階層継承階層
System.Object
   System.MarshalByRefObject
     System.ComponentModel.Component
       System.Data.Common.DbCommand
        System.Data.SqlClient.SqlCommand
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバ場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「SqlCommand クラス」の関連用語

SqlCommand クラスのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



SqlCommand クラスのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS