Procedura: individuare una riga specifica in un oggetto DataTable
Aggiornamento: novembre 2007
Per la maggior parte delle applicazioni basate sull'utilizzo di dati è necessario accedere a determinati record che soddisfano alcuni tipi di criteri. È possibile individuare una riga specifica in un dataset richiamando il metodo Find dell'oggetto DataRowCollection. Se la chiave primaria esiste, verrà restituito un oggetto DataRow. Se invece non è possibile trovare la chiave primaria, verrà restituito un valore Null.
Individuazione di una riga mediante un valore di chiave primaria
Per individuare una riga in un dataset tipizzato con un valore di chiave primaria
Chiamare il metodo fortemente tipizzato FindBy che utilizza la chiave primaria della tabella per individuare una riga.
Nell'esempio riportato di seguito la colonna CustomerID è la chiave primaria della tabella Customers, pertanto il metodo FindBy generato è FindByCustomerID. Nell'esempio viene descritto come assegnare una DataRow specifica a una variabile utilizzando il metodo FindBy generato.
Dim customersRow As NorthwindDataSet.CustomersRow customersRow = NorthwindDataSet1.Customers.FindByCustomerID("ALFKI")
NorthwindDataSet.CustomersRow customersRow = northwindDataSet1.Customers.FindByCustomerID("ALFKI");
Per individuare una riga in un dataset non tipizzato con un valore di chiave primaria
Chiamare il metodo Find di un insieme DataRowCollection passando come argomento la chiave primaria.
Nell'esempio riportato di seguito viene illustrata la procedura per dichiarare una nuova riga denominata foundRow e assegnarle il valore restituito del metodo Find. Se la chiave primaria viene individuata, il contenuto dell'indice della colonna 1 verrà visualizzato in una finestra di messaggio.
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[1].ToString()); } else { MessageBox.Show("A row with the primary key of " + s + " could not be found"); }
Individuazione delle righe in base ai valori delle colonne
Per individuare le righe in base ai valori di ciascuna colonna
Le tabelle dati vengono create con un metodo Select che restituisce una matrice di DataRow in base all'espressione passata al metodo Select. Per ulteriori informazioni sulla creazione di espressioni valide, vedere la sezione "Sintassi delle espressioni" della pagina relativa alla proprietà Expression.
Nell'esempio seguente viene descritto come utilizzare il metodo Select dell'oggetto DataTable per l'individuazione di righe specifiche.
Dim foundRows() As Data.DataRow foundRows = DataSet1.Tables("Customers").Select("CompanyName Like 'A%'")
DataRow[] foundRows; foundRows = dataSet1.Tables["Customers"].Select("CompanyName Like 'A%'");
Vedere anche
Riferimenti
Altre risorse
Modifica di dati nell'applicazione
Connessione ai dati in Visual Studio
Preparazione dell'applicazione al ricevimento di dati
Recupero di dati nell'applicazione
Visualizzazione di dati su form nelle applicazioni Windows