OleDbCommand.ExecuteNonQuery メソッド

定義

Connection に対して SQL ステートメントを実行し、影響を受けた行数を返します。

public:
 override int ExecuteNonQuery();
public:
 virtual int ExecuteNonQuery();
public override int ExecuteNonQuery ();
public int ExecuteNonQuery ();
override this.ExecuteNonQuery : unit -> int
abstract member ExecuteNonQuery : unit -> int
override this.ExecuteNonQuery : unit -> int
Public Overrides Function ExecuteNonQuery () As Integer
Public Function ExecuteNonQuery () As Integer

戻り値

影響を受けた行の数。

実装

例外

接続が存在しません。

または

接続が開かれていません。

- または -

接続を登録した当初のトランザクション コンテキストとは異なるコンテキストでは、コマンドを実行できません。

次の例では、 を OleDbCommand 作成し、 を使用して ExecuteNonQuery実行します。 この例では、UPDATE、INSERT、DELETE などの SQL ステートメントである文字列と、データ ソースへの接続に使用する文字列が渡されます。

static private void CreateOleDbCommand(
    string queryString, string connectionString)
{
    using (OleDbConnection connection = new
               OleDbConnection(connectionString))
    {
        connection.Open();
        OleDbCommand command = new
            OleDbCommand(queryString, connection);
        command.ExecuteNonQuery();
    }
}
Private Sub CreateOleDbCommand( _
    ByVal queryString As String, ByVal connectionString As String)
    Using connection As New OleDbConnection(connectionString)
        connection.Open()
        Dim command As New OleDbCommand(queryString, connection)
        command.ExecuteNonQuery()
    End Using
End Sub

注釈

を使用 ExecuteNonQuery すると、カタログ操作を実行できます。たとえば、データベースの構造に対してクエリを実行したり、テーブルなどのデータベース オブジェクトを作成したり、UPDATE、INSERT、または DELETE ステートメントを実行せずに DataSet データベース内のデータを変更したりできます。

は行を ExecuteNonQuery 返しませんが、パラメーターにマップされた出力パラメーターまたは戻り値にはデータが設定されます。

UPDATE、INSERT、DELETE の各ステートメントで、戻り値はそのコマンドの影響を受ける行の数です。 その他のすべての種類のステートメントでは、戻り値は -1 です。 ロールバックが発生した場合、戻り値も -1 になります。

適用対象

こちらもご覧ください