This documentation is archived and is not being maintained.

OracleCommand.ExecuteOracleNonQuery Method

Note: This namespace, class, or member is supported only in version 1.1 of the .NET Framework.

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

[Visual Basic]
Public Function ExecuteOracleNonQuery( _
   <Out()> ByRef rowid As OracleString _
) As Integer
public int ExecuteOracleNonQuery(
   out OracleString rowid
public: int ExecuteOracleNonQuery(
] OracleString* rowid
public function ExecuteOracleNonQuery(
   rowid : OracleString
) : int;


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

Return Value

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


Exception Type Condition
InvalidOperationException 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.


Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family

.NET Framework Security: 

See Also

OracleCommand Class | OracleCommand Members | System.Data.OracleClient Namespace