OracleDataReader.GetOrdinal(String) Método
Definição
Obtém a ordinal da coluna, de acordo com o nome da coluna.Gets the column ordinal, given the name of the column.
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
Parâmetros
- name
- String
O nome da coluna.The name of the column.
Retornos
O ordinal da coluna baseado em zero.The zero-based column ordinal.
Implementações
Exemplos
O exemplo a seguir demonstra como usar o GetOrdinal método.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();
}
Comentários
GetOrdinal executa uma pesquisa que diferencia maiúsculas de minúsculas primeiro.GetOrdinal performs a case-sensitive lookup first. Se falhar, uma segunda pesquisa que não diferencia maiúsculas de minúsculas é feita.If it fails, a second case-insensitive search is made. O método gera uma IndexOutOfRange exceção se o ordinal de coluna com base em zero não for encontrado.The method throws an IndexOutOfRange exception if the zero-based column ordinal is not found.
GetOrdinal não distingue largura de kana.GetOrdinal is kana-width insensitive.
Como pesquisas baseadas em ordinais são mais eficientes do que pesquisas por nome, é ineficiente chamar GetOrdinal dentro de um loop.Because ordinal-based lookups are more efficient than named lookups, it is inefficient to call GetOrdinal within a loop. Em vez disso, chame GetOrdinal uma vez e, em seguida, atribua os resultados a uma variável de inteiro para uso dentro do loop.Instead, call GetOrdinal once and then assign the results to an integer variable for use within the loop.