Die Klasse System.Data.DataTable bietet die Möglichkeit, ein Array von Datensätzen abzufragen, deren Daten vorgegebenen Filterbedingungen genügen (Select-Methode). Überladungen dieser Methode erlauben dabei die Angabe einer Sortier-Reihenfolge. Zusätzlich kann der aktuelle Zeilen-Zustand (RowState) als Filter vorgegeben werden. Bei der Formulierung dieser Auswahlkriterien als "Filterstring" sind die Regeln der DataColumn.Expression-Eigenschaft anzuwenden. Gewöhnungsbedürftig! Einige Hinweise:
Für die Abfrage von Zeilen mit fehlenden Spalten-Werten steht "IS NULL" zur Verfügung. Um das Array der abgefragten Datensätze als DataTable-Instanz zu erhalten, kann folgende Funktion genutzt werden. (Bei ungeeigneten Parametern werden Ausnahmen ausgelöst.) ''' <summary>gefilterte Datensätze als DataTable zurückgeben</summary> ''' <param name="dt">Table, deren Datensätze zu filtern sind</param> ''' <param name="filterstring">Filterbedingungen</param> Private Function SelectRows(ByVal dt As DataTable, _ ByVal filterstring As String) As DataTable ' Zeilen abfragen, die dem Filterstring entsprechen Dim rows_selected() As DataRow = dt.Select(filterstring) ' Tabelle für gefilterte Zeilen Dim dt_select As New DataTable ' Tabellenschema übertragen dt_select = dt.Clone ' Gefilterte Zeilen eintragen For Each row As DataRow In rows_selected dt_select.ImportRow(row) Next row ' Tabelle mit gefilterten Sätzen zurückgeben Return dt_select End Function Dieser Tipp wurde bereits 16.954 mal aufgerufen. Voriger Tipp | Zufälliger Tipp | Nächster Tipp
Anzeige
Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv Vol.6 Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
Neu! sevPopUp 2.0 Dynamische Kontextmenüs! Erstellen Sie mit nur wenigen Zeilen Code Kontextmenüs dynamisch zur Laufzeit. Vordefinierte Styles (XP, Office, OfficeXP, Vista oder Windows 8) erleichtern die Anpassung an die eigenen Anwendung... Tipp des Monats September 2024 Dieter Otter Übergabeparameter: String oder Array? Mit der IsArray-Funktion lässt sich prüfen, ob es sich bei einem Übergabeparameter an eine Prozedur um ein Array oder einer "einfachen" Variable handelt. Access-Tools Vol.1 Über 400 MByte Inhalt Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB |
||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |