OleDbDataReader.GetOrdinal(String) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene el ordinal de columna, dado el nombre de la columna.
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
Nombre de la columna.
Devoluciones
Ordinal de columna de base cero.
Implementaciones
Excepciones
El nombre especificado no es un nombre de columna válido.
Ejemplos
En el ejemplo siguiente se muestra cómo usar el GetOrdinal método .
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
Comentarios
GetOrdinal realiza primero una búsqueda que distingue mayúsculas de minúsculas. Si se produce un error, se realiza una segunda búsqueda sin distinción entre mayúsculas y minúsculas. El método produce una IndexOutOfRange excepción si no se encuentra el ordinal de columna de base cero.
GetOrdinal no distingue el ancho kana.
Dado que las búsquedas basadas en ordinales son más eficaces que las búsquedas con nombre, es ineficaz llamar dentro GetOrdinal de un bucle. Ahorre tiempo llamando a GetOrdinal una sola vez y asignando los resultados a una variable de entero para su uso en el bucle .