OleDbDataReader.GetOrdinal(String) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá řadový sloupec vzhledem k názvu sloupce.
public:
override int GetOrdinal(System::String ^ name);
public:
virtual int GetOrdinal(System::String ^ name);
public override int GetOrdinal (string name);
public int GetOrdinal (string name);
override this.GetOrdinal : string -> int
abstract member GetOrdinal : string -> int
override this.GetOrdinal : string -> int
Public Overrides Function GetOrdinal (name As String) As Integer
Public Function GetOrdinal (name As String) As Integer
Parametry
- name
- String
Název sloupce
Návraty
Řadový sloupec založený na nule.
Implementuje
Výjimky
Zadaný název není platný název sloupce.
Příklady
Následující příklad ukazuje, jak použít metodu GetOrdinal .
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
Poznámky
GetOrdinal nejprve provede vyhledávání s rozlišováním velkých a malých písmen. Pokud selže, provede se druhé hledání bez rozlišování velkých a malých písmen. Metoda vyvolá výjimku IndexOutOfRange
, pokud není nalezena pořadová řada sloupců založená na nule.
GetOrdinal není kana-width necitlivý.
Vzhledem k tomu, že vyhledávání na základě řad jsou efektivnější než pojmenovaná vyhledávání, je neefektivní volat GetOrdinal v rámci smyčky. Ušetřete čas jednorázovým voláním GetOrdinal a přiřazením výsledků k celočíselné proměnné pro použití v rámci smyčky.