Udostępnij za pośrednictwem


OleDbDataReader.GetOrdinal(String) Metoda

Definicja

Pobiera porządkową kolumnę, podając nazwę kolumny.

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

Parametry

name
String

Nazwa kolumny.

Zwraca

Liczba porządkowa kolumn opartych na zerach.

Implementuje

Wyjątki

Określona nazwa nie jest prawidłową nazwą kolumny.

Przykłady

W poniższym przykładzie pokazano, jak używać GetOrdinal metody .

public static void ReadData(string connectionString)
{
    string queryString = "SELECT DISTINCT CustomerID FROM Orders";
    using (OleDbConnection connection = new OleDbConnection(connectionString))
    {
        OleDbCommand command = new OleDbCommand(queryString, connection);

        connection.Open();
        OleDbDataReader reader = command.ExecuteReader();

        int customerID = reader.GetOrdinal("CustomerID");

        while (reader.Read())
        {
            Console.WriteLine("CustomerID={0}", reader.GetString(customerID));
        }
        reader.Close();
    }
}
Public Sub ReadData(ByVal connectionString As String)
    Dim queryString As String = "SELECT DISTINCT CustomerID FROM Orders"

    Using connection As New OleDbConnection(connectionString)
        Dim command As New OleDbCommand(queryString, connection)

        connection.Open()

        Dim reader As OleDbDataReader = command.ExecuteReader()

        Dim customerID As Integer = reader.GetOrdinal("CustomerID")
        While reader.Read()
            Console.WriteLine("CustomerID={0}", reader.GetString(customerID))
        End While
        reader.Close()
    End Using
End Sub

Uwagi

GetOrdinal najpierw wykonuje wyszukiwanie uwzględniające wielkość liter. W przypadku niepowodzenia zostanie wykonane drugie wyszukiwanie bez uwzględniania wielkości liter. Metoda zgłasza IndexOutOfRange wyjątek, jeśli nie znaleziono porządkowej kolumny opartej na zerze.

GetOrdinal jest niewrażliwa na szerokość kana.

Ponieważ wyszukiwania na podstawie porządkowych są bardziej wydajne niż nazwane wyszukiwania, jest nieefektywne wywołanie GetOrdinal w ramach pętli. Oszczędzaj czas, wywołując GetOrdinal jednorazowo i przypisując wyniki do zmiennej całkowitej do użycia w pętli.

Dotyczy

Zobacz też