This documentation is archived and is not being maintained.

OdbcCommand.CommandType Property

Gets or sets a value that indicates how the CommandText property is interpreted.

Namespace: System.Data.Odbc
Assembly: System.Data (in

public override CommandType CommandType { get; set; }
/** @property */
public CommandType get_CommandType ()

/** @property */
public void set_CommandType (CommandType value)

public override function get CommandType () : CommandType

public override function set CommandType (value : CommandType)

Not applicable.

Property Value

One of the CommandType values. The default is Text.

Exception typeCondition


The value was not a valid CommandType.

When the CommandType property is set to StoredProcedure, you should set the CommandText property to the full ODBC call syntax. The command then executes this stored procedure when you call one of the Execute methods (for example, ExecuteReader or ExecuteNonQuery).

The Connection, CommandType and CommandText properties cannot be set if the current connection is performing an execute or fetch operation.

The .NET Framework Data Provider for ODBC does not support passing named parameters to an SQL statement or to a stored procedure called by an OdbcCommand. In either of these cases, use the question mark (?) placeholder. For example:

SELECT * FROM Customers WHERE CustomerID = ?

The order in which OdbcParameter objects are added to the OdbcParameterCollection must directly correspond to the position of the question mark placeholder for the parameter.


The .NET Framework Data Provider for ODBC does not support the CommandType setting of TableDirect.

Windows 98, Windows Server 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0, 2.0, 1.1