C# で ExecuteNonQuery を使用する方法は?
C#のExecuteNonQueryメソッドは、INSERT、UPDATE、DELETE などの SQL ステートメントを実行して影響を受けた行数を返すメソッドです。
それは主に結果セットを返さないSQL文を実行するために使用されます。この種の文は通常、データベースのデータを変更するために使用されます。
次のように ExecuteNonQuery メソッドを使用するための一般的な手順を実行します。
- データベースに接続する SqlConnection オブジェクトを作成します。
- SQL ステートメントを実行するための SqlCommand オブジェクトを作成します。
- SQL文を実行するために、SqlCommandのCommandTextプロパティに実行したいSQL文を設定します。
- SqlConnectionオブジェクトのOpenメソッドを使用してデータベースへの接続を開く。
- SqlCommandオブジェクトのExecuteNonQueryメソッドを使用してSQL文を実行し、影響のあった行数を返す。
- データベース接続を閉じるには、SqlConnection オブジェクトの Close メソッドを使用します。
下記にサンプルコードを示します
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open();
using (SqlCommand command = new SqlCommand("DELETE FROM Customers WHERE Country='USA'", connection))
{
int rowsAffected = command.ExecuteNonQuery();
Console.WriteLine("受影响的行数: " + rowsAffected);
}
}
上記のサンプルでは、データベースに接続するSqlConnectionオブジェクトを作成しています。次に、SqlCommandオブジェクトを作成し、CommandTextプロパティに実行するSQL文(ここではDELETE文)を設定しています。その後、データベース接続を開き、ExecuteNonQueryメソッドを使用してSQL文を実行します。最後に、影響を受けた行数を表示しています。
ExecuteNonQueryメソッドは影響を受けた行数を表す整数を返します(SELECT文など、データベース内のデータを変更しないSQL文を実行した場合は0を返します)。