OracleDataReader::GetOrdinal Method (String^)
Gets the column ordinal, given the name of the column.
Assembly: System.Data.OracleClient (in System.Data.OracleClient.dll)
Parameters
- name
-
Type:
System::String^
The name of the column.
Implements
IDataRecord::GetOrdinal(String^)GetOrdinal performs a case-sensitive lookup first. If it fails, a second case-insensitive search is made. The method throws an IndexOutOfRange exception if the zero-based column ordinal is not found.
GetOrdinal is kana-width insensitive.
Because ordinal-based lookups are more efficient than named lookups, it is inefficient to call GetOrdinal within a loop. Instead, call GetOrdinal once and then assign the results to an integer variable for use within the loop.
The following example demonstrates how to use the GetOrdinal method.
[Visual Basic]
Public Sub ReadOracleData(ByVal connectionString As String)
Dim queryString As String = "SELECT OrderID, CustomerID FROM Orders"
Dim connection As New OracleConnection(connectionString)
Dim command As New OracleCommand(queryString, connectionString)
connection.Open()
Dim reader As OracleDataReader = command.ExecuteReader()
Dim custIdCol As Integer = reader.GetOrdinal("CustomerID")
Do While reader.Read()
Console.WriteLine("CustomerID = {0}", reader.GetString(custIdCol))
Loop
reader.Close()
connection.Close()
End Sub
[C#]
public void ReadOracleData(string connectionString)
{
string queryString = "SELECT OrderID, CustomerID FROM Orders";
OracleConnection connection = new OracleConnection(connectionString);
OracleCommand command = new OracleCommand(queryString,connection);
connection.Open();
OracleDataReader reader = command.ExecuteReader();
int custIdCol = reader.GetOrdinal("CustomerID");
while (reader.Read())
Console.WriteLine("CustomerID = {0}", reader.GetString(custIdCol));
reader.Close();
connection.Close();
}
Available since 1.1