OracleCommand.ExecuteNonQuery メソッド

定義

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

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

戻り値

UPDATE、INSERT、DELETE の各ステートメントで、戻り値はそのコマンドの影響を受ける行の数です。 CREATE TABLE や DROP TABLE などのステートメントでの戻り値は、0 です。 その他のすべての種類のステートメントでは、戻り値は -1 です。

実装

例外

接続が存在しません。

または

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

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

public void CreateOracleCommand(string myExecuteQuery, string connectionString)
{
    using (OracleConnection connection = new OracleConnection(connectionString))
    {
        OracleCommand command = new OracleCommand(myExecuteQuery, connection);
        command.Connection.Open();
        command.ExecuteNonQuery();
    }
}
Public Sub CreateOracleCommand(ByVal myExecuteQuery As String, _
ByVal connectionString As String)
    Using connection As New OracleConnection(connectionString)
        Dim command As New OracleCommand(myExecuteQuery, connection)
        command.Connection.Open()
        command.ExecuteNonQuery()
    End Using
End Sub

注釈

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

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

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

適用対象

こちらもご覧ください