Partage via


OracleDataReader.GetOrdinal(String) Méthode

Définition

Obtient le numéro de la colonne, en fonction du nom de la colonne.

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

Paramètres

name
String

Nom de la colonne.

Retours

Numéro de colonne de base zéro.

Implémente

Exemples

L'exemple suivant décrit comment utiliser la méthode GetOrdinal.

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

Remarques

GetOrdinal effectue d’abord une recherche respectant la casse. En cas d’échec, une deuxième recherche ne respectant pas la casse est effectuée. La méthode lève une IndexOutOfRange exception si l’ordinal de colonne de base zéro est introuvable.

GetOrdinal ne respecte pas la largeur du jeu de caractères kana.

Étant donné que les recherches basées sur un ordinal sont plus efficaces que les recherches basées sur un nom, il est inefficace d'appeler GetOrdinal dans une boucle. Au lieu de cela, appelez GetOrdinal une seule fois, puis affectez les résultats à une variable entière à utiliser dans la boucle.

S’applique à