OleDbDataReader.GetOrdinal(String) Methode

Definition

Ruft bei angegebenem Spaltennamen die Ordnungszahl der Spalte ab.

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

Parameter

name
String

Der Name der Spalte.

Gibt zurück

Int32

Die nullbasierte Ordnungszahl der Spalte.

Implementiert

Ausnahmen

Der angegebene Name ist kein gültiger Spaltenname.

Beispiele

Im folgenden Beispiel wird die Verwendung der GetOrdinal-Methode veranschaulicht.

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

Hinweise

GetOrdinal führt zuerst eine Groß-/Kleinschreibung durch. Wenn es fehlschlägt, wird eine zweite Groß- und Kleinschreibungssuche vorgenommen. Die Methode löst eine IndexOutOfRange Ausnahme aus, wenn die nullbasierte Spalte nicht gefunden wird.

GetOrdinal berücksichtigt die Laufweite von Kana nicht.

Da Nachschlagevorgänge auf der Basis von Ordinalzahlen effizienter sind als Nachschlagevorgänge nach Namen, ist der Aufruf von GetOrdinal innerhalb einer Schleife ineffizient. Sparen Sie Zeit, indem Sie einmal aufrufen GetOrdinal und die Ergebnisse einer ganzzahligen Variable für die Verwendung innerhalb der Schleife zuweisen.

Gilt für

Siehe auch