OracleDataReader.GetOrdinal(String) Метод

Определение

Возвращает порядковый номер столбца при наличии заданного имени столбца.Gets the column ordinal, given the name of the column.

public:
 override int GetOrdinal(System::String ^ name);
public override int GetOrdinal (string name);
override this.GetOrdinal : string -> int
Public Overrides Function GetOrdinal (name As String) As Integer

Параметры

name
String

Имя столбца.The name of the column.

Возвраты

Порядковый номер столбца (от нуля).The zero-based column ordinal.

Примеры

В следующем примере показано использование метода GetOrdinal.The following example demonstrates how to use the GetOrdinal method.

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  
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();  
}  

Комментарии

GetOrdinal сначала выполняет поиск с учетом регистра.GetOrdinal performs a case-sensitive lookup first. В случае сбоя выполняется второй Поиск без учета регистра.If it fails, a second case-insensitive search is made. Метод создает исключение IndexOutOfRange, если порядковый номер столбца, начинающийся с нуля, не найден.The method throws an IndexOutOfRange exception if the zero-based column ordinal is not found.

GetOrdinal не учитывает ширину японской азбуки.GetOrdinal is kana-width insensitive.

Поскольку уточняющие запросы более эффективны, чем имена уточняющих запросов, вызов GetOrdinal в цикле неэффективен.Because ordinal-based lookups are more efficient than named lookups, it is inefficient to call GetOrdinal within a loop. Вместо этого вызовите GetOrdinal один раз и затем присвойте результаты целочисленной переменной для использования в цикле.Instead, call GetOrdinal once and then assign the results to an integer variable for use within the loop.

Применяется к