C# - ADO.NET で SQL コマンドを実行する

C#ADO.NET で SQL コマンドを実行する

スポンサーリンク

ADO.NET で SQL コマンドを実行するには、System.Data.SqlClient.SqlCommand クラスの ExecuteNonQuery メソッドを使用します。実行する SQL コマンドは、System.Data.SqlClient.SqlCommand クラスの CommandText プロパティに設定します。

SqlCommand クラスのインスタンス自体は、SqlConnection クラスと紐付ける必要があります。SqlCommand クラスの Connection プロパティに SqlConnection を設定する必要があります。確実なのは、SqlConnection クラスの CreateCommand メソッドを使うことです。CreateCommand メソッドは、戻り値で SqlConnection に紐付いた SqlCommand のインスタンスが返されます。

説明が重複して、コードが冗長となることを防ぐために、SqlConnection クラスの Open メソッドまでの説明を省きました。引数 cSqlConnection は ADO.NET で SQL Server に接続する で接続が確立された SqlConnection クラスのインスタンスとします。

サンプルコード

以下にサンプルコードを示します。

C# 全般
private static void ExecuteNonQueryTest(System.Data.SqlClient.SqlConnection cSqlConnection) {
    // cSqlConnection から SqlCommand のインスタンスを生成する
    System.Data.SqlClient.SqlCommand hCommand = cSqlConnection.CreateCommand();

    // 実行する SQL コマンドを設定する
    hCommand.CommandText = "UPDATE Employees SET LastName = 'Queen' WHERE EmployeeID = 7";

    // SQL コマンドを実行し、影響を受けた行を返す
    int iResult = hCommand.ExecuteNonQuery();

    // hCommand を破棄する (正しくは オブジェクトの破棄を保証する を参照)
    hCommand.Dispose();

    // 影響を受けた行を表示する
    MessageBox.Show(iResult.ToString());
}

関連するリファレンス

準備中です。

スポンサーリンク