OracleDataReader.GetOrdinal(String) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém a ordinal da coluna, de acordo com o nome da coluna.
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.
Retornos
O ordinal da coluna baseado em zero.
Implementações
Exemplos
O exemplo a seguir demonstra como usar o GetOrdinal método .
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. Se falhar, uma segunda pesquisa que não diferencia maiúsculas de minúsculas será feita. O método gerará uma exceção IndexOutOfRange
se o ordinal de coluna baseado em zero não for encontrado.
GetOrdinal não distingue largura de kana.
Como pesquisas baseadas em ordinais são mais eficientes do que pesquisas por nome, é ineficiente chamar GetOrdinal dentro de um loop. Em vez disso, chame GetOrdinal uma vez e atribua os resultados a uma variável de inteiro para uso dentro do loop.