Udostępnij za pośrednictwem


Porady: lokalizowanie określonego wiersza DataTable

Większość aplikacji, które zużywają danych potrzeba dostępu określonych rekordów, które spełniają kryteria pewnego rodzaju.W celu znalezienia określonego wiersza w zestawie danych, można wywołać Find metoda DataRowCollection obiektu.Jeśli istnieje klucz podstawowy, a następnie DataRow zwracany jest obiekt.Jeśli nie można odnaleźć klucza podstawowego, zwracana jest wartość null.

Znajdowanie wiersza z wartości klucza podstawowego

Aby znaleźć wiersz w zestawie danych wpisywanych z wartości klucza podstawowego

  • Wywołanie jednoznacznie określonym typie FindBy metodę używaną do zlokalizuj wiersz z tabeli klucza podstawowego.

    W poniższym przykładzie CustomerID kolumna jest kluczem podstawowym, z Customers tabeli tak wygenerowanej FindBy jest metoda FindByCustomerID.W przykładzie pokazano sposób przypisywania określonego DataRow do zmiennej za pomocą wygenerowanej FindBy metody.

    Dim customersRow As NorthwindDataSet.CustomersRow
    customersRow = NorthwindDataSet1.Customers.FindByCustomerID("ALFKI")
    
    NorthwindDataSet.CustomersRow customersRow = 
        northwindDataSet1.Customers.FindByCustomerID("ALFKI");
    

Aby znaleźć wiersz bez typu danych, z wartości klucza podstawowego

  • Wywołanie Find metoda DataRowCollection kolekcji, przekazując klucza podstawowego jako parametr.

    Poniższy przykład ilustruje sposób deklarowania nowy wiersz o nazwie foundRow i przypisać jej wartość zwracaną przez Find metody.Jeśli klucz podstawowy zostanie znaleziony, zawartość kolumny indeksu 1 są wyświetlane w oknie komunikatu.

    Dim s As String = "primaryKeyValue" 
    Dim foundRow As DataRow = DataSet1.Tables("AnyTable").Rows.Find(s)
    
    If foundRow IsNot Nothing Then
        MsgBox(foundRow(1).ToString())
    Else
        MsgBox("A row with the primary key of " & s & " could not be found")
    End If
    
    string s = "primaryKeyValue";
    DataRow foundRow = dataSet1.Tables["AnyTable"].Rows.Find(s);
    
    if (foundRow != null) 
    {
        MessageBox.Show(foundRow[0].ToString());
    }
    else
    {
        MessageBox.Show("A row with the primary key of " + s + " could not be found");
    }
    

Znajdowanie wiersze według wartości w kolumnie

Aby znaleźć wiersze na podstawie wartości w dowolnej kolumny

  • Tabele danych są tworzone z Select metodę, która zwraca tablicę DataRowprzekazywane na podstawie wyrażenia s Select metody.Aby uzyskać więcej informacji na temat tworzenia wyrażeń ważne, zobacz sekcję "Składni wyrażenia" strony Expression właściwości.

    Poniższy przykład pokazuje, jak używać Select metoda DataTable Aby znaleźć określone wiersze.

    Dim foundRows() As Data.DataRow
    foundRows = DataSet1.Tables("Customers").Select("CompanyName Like 'A%'")
    
    DataRow[] foundRows;
    foundRows = dataSet1.Tables["Customers"].Select("CompanyName Like 'A%'");
    

Zobacz też

Informacje

Find

Select

Koncepcje

Edytowanie danych w aplikacji

Przygotowywanie aplikacji na otrzymywanie danych

Pobieranie danych do aplikacji

Powiązywanie kontrolek z danymi w Visual Studio

Edytowanie danych w aplikacji

Sprawdzanie poprawności danych

Zapisywanie danych

Inne zasoby

Łączenie z danymi w Visual Studio