OracleCommand.ExecuteOracleNonQuery Method (OracleString)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Executes an SQL statement against the Connection and returns the number of rows affected.

Namespace:   System.Data.OracleClient
Assembly:  System.Data.OracleClient (in System.Data.OracleClient.dll)

public int ExecuteOracleNonQuery(
	out OracleString rowid


Type: System.Data.OracleClient.OracleString

A base64 string representation of the actual row ID in the server.

Return Value

Type: System.Int32

For UPDATE, INSERT, and DELETE statements, the return value is the number of rows affected by the command. For CREATE TABLE and DROP TABLE statements, the return value is 0. For all other types of statements, the return value is -1.

Exception Condition

The connection does not exist.


The connection is not open.

You can use ExecuteOracleNonQuery to perform catalog operations (for example, querying the structure of a database or creating database objects such as tables); or to change the data in a database, without using a DataSet, by executing UPDATE, INSERT, or DELETE statements.

ExecuteOracleNonQuery differs from ExecuteNonQuery in that it returns rowid as an output parameter if you are executing an INSERT, DELETE, or UPDATE statement that affects exactly one row. This allows you to uniquely identify a row in the Oracle database, which can allow you to increase performance in subsequent, related queries.

Although ExecuteOracleNonQuery does not return any rows, any output parameters or return values mapped to parameters are populated with data.

.NET Framework
Available since 1.1
Return to top