Export (0) Print
Expand All

OdbcCommand.ExecuteNonQuery 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 Overridable Function ExecuteNonQuery() As Integer Implements _
   IDbCommand.ExecuteNonQuery
[C#]
public virtual int ExecuteNonQuery();
[C++]
public: virtual int ExecuteNonQuery();
[JScript]
public function ExecuteNonQuery() : int;

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.

Implements

IDbCommand.ExecuteNonQuery

Exceptions

Exception Type Condition
InvalidOperationException The connection does not exist.

-or-

The connection is not open.

Remarks

You can use ExecuteNonQuery 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.

You can also use ExecuteNonQuery to execute multiple SQL statements if the underlying ODBC driver supports this functionality. In this case, the return value is the number of rows affected by all statements in the command.

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

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. If a rollback occurs, the return value is also -1.

Example

[Visual Basic, C#, C++] The following example creates an OdbcCommand and then executes it by using ExecuteNonQuery. The example is passed a string that is an SQL statement (such as UPDATE, INSERT, or DELETE) and a string to use to connect to the data source.

[Visual Basic] 
Public Sub CreateMyOdbcCommand(myExecuteQuery As String, _
myConnectionString As String)
    Dim myConnection As New OdbcConnection(myConnectionString)
    Dim myCommand As New OdbcCommand(myExecuteQuery, myConnection)
    myCommand.Connection.Open()
    myCommand.ExecuteNonQuery()
    MyConnection.Close()
End Sub

[C#] 
public void CreateMyOdbcCommand(string myExecuteQuery, string myConnectionString) 
{
   OdbcConnection myConnection = new OdbcConnection(myConnectionString);
   OdbcCommand myCommand = new OdbcCommand(myExecuteQuery, myConnection);
   myCommand.Connection.Open();
   myCommand.ExecuteNonQuery();
   myConnection.Close();
}

[C++] 
public:
    void CreateMyOdbcCommand(String* myExecuteQuery, String* myConnectionString)
    {
        OdbcConnection* myConnection = new OdbcConnection(myConnectionString);
        OdbcCommand* myCommand = new OdbcCommand(myExecuteQuery, myConnection);
        myCommand->Connection->Open();
        myCommand->ExecuteNonQuery();
        myConnection->Close();
    };

[JScript] No example is available for JScript. To view a Visual Basic, C#, or C++ example, click the Language Filter button Language Filter in the upper-left corner of the page.

Requirements

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

See Also

OdbcCommand Class | OdbcCommand Members | System.Data.Odbc Namespace

Show:
© 2014 Microsoft