OdbcDataReader.GetOrdinal(String) Metodo

Definizione

Ottiene la posizione ordinale della colonna, dato il nome della colonna.Gets the column ordinal, given the name of the column.

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

Parametri

value
String

Nome della colonna.The name of the column.

Restituisce

Ordinale di colonna in base zero.The zero-based column ordinal.

Esempi

Nell'esempio seguente viene illustrato l'utilizzo del metodo GetOrdinal.The following example demonstrates how to use the GetOrdinal method.

public static void ReadData(string connectionString)
{
    string queryString = "SELECT DISTINCT CustomerID FROM Orders";

    using (OdbcConnection connection = new OdbcConnection(connectionString))
    {
        OdbcCommand command = new OdbcCommand(queryString, connection);

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

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

        while (reader.Read())
        {
            Console.WriteLine("CustomerID={0}", reader.GetString(customerID));
        }

        // Call Close when done reading.
        reader.Close();
    }
}
Public Sub ReadData(ByVal connectionString As String)
    Dim queryString As String = "SELECT DISTINCT CustomerID FROM Orders"

    Using connection As New OdbcConnection(connectionString)
        Dim command As New OdbcCommand(queryString, connection)

        connection.Open()

        Dim reader As OdbcDataReader = command.ExecuteReader()

        Dim customerID As Integer = reader.GetOrdinal("CustomerID")

        While reader.Read()
            Console.WriteLine("CustomerID={0}", reader.GetString(customerID))
        End While

        ' Call Close when done reading.
        reader.Close()
    End Using
End Sub

Commenti

GetOrdinal esegue prima una ricerca con distinzione tra maiuscole e minuscole.GetOrdinal performs a case-sensitive lookup first. Se ha esito negativo, viene eseguita una seconda ricerca senza distinzione tra maiuscole e minuscole.If it fails, a second case-insensitive search is made. Il metodo genera un'eccezione IndexOutOfRange se il numero ordinale di colonna in base zero non viene trovato.The method throws an IndexOutOfRange exception if the zero-based column ordinal is not found.

GetOrdinal non fa distinzione di larghezza kana.GetOrdinal is kana-width insensitive.

Poiché le ricerche basate su ordinali sono più efficienti delle ricerche denominate, non è efficiente chiamare GetOrdinal all'interno di un ciclo.Because ordinal-based lookups are more efficient than named lookups, it is inefficient to call GetOrdinal within a loop. Chiamare invece GetOrdinal una volta e quindi assegnare i risultati a una variabile integer da usare all'interno del ciclo.Instead, call GetOrdinal one time and then assign the results to an integer variable for use within the loop.

Si applica a

Vedi anche