Como: Editar linhas em uma DataTable
Para poder editar uma linha existente em um DataTable, você precisa localizar o DataRow Você deseja editar e em seguida, atribuir os valores atualizados para as colunas desejadas.
Os exemplos a seguir mostram como localizar e modificar linhas em DataSets tipado, e sem-tipo.
Quando você não pendente saber o índice da linha que você deseja editar para editar um registro em uma DataTable
Normalmente, você não souber o índice da linha você deseja editar.Tabelas de dados em DataSets digitados são criados com um FindBy método que usa a chave primária da tabela para localizar uma linha.
Para atualizar registros existentes na digitado DataSets (índice de linha não conhecido)
Atribuir uma DataRow específico a uma variável usando o método FindBy gerado e use essa variável para acessar as colunas que você deseja editar e atribuir novos valores para eles.
No exemplo a seguir, a CustomerID coluna é a chave primária da tabela Customers, portanto é FindByCustomerID o método gerado FindBy.Este exemplo pressupõe que você tenha gerado um dataset tipado chamado NorthwindDataSet, e se você tem uma instância deste DataSet tipado chamado northwindDataSet1.
Dim customersRow As NorthwindDataSet.CustomersRow customersRow = NorthwindDataSet1.Customers.FindByCustomerID("ALFKI") customersRow.CompanyName = "Updated Company Name" customersRow.City = "Seattle"
NorthwindDataSet.CustomersRow customersRow = northwindDataSet1.Customers.FindByCustomerID("ALFKI"); customersRow.CompanyName = "Updated Company Name"; customersRow.City = "Seattle";;
Normalmente, você não souber o índice da linha você deseja editar.Tabelas de dados em conjuntos de dados sem-tipo são criadas com um Select método que retorna uma matriz de DataRow s.
Para atualizar registros existentes na sem-tipo DataSets (índice de linha não conhecido)
Use o método Select de DataTable para localizar uma linha específica e atribuir novos valores para as colunas desejadas
No exemplo a seguir, a CustomerID coluna é a chave primária da tabela Customers, para chamar o Select método e pesquisa para a chave primária apenas resultará em localizando uma linha.O tipo de retorno é ainda uma matriz de DataRow s, de forma que é acessar o (0) índice, ou pela primeira vez na matriz de linha.Este exemplo assume que você tiver um dataset chamado dataSet1.
Dim customerRow() As Data.DataRow customerRow = DataSet1.Tables("Customers").Select("CustomerID = 'ALFKI'") customerRow(0)("CompanyName") = "Updated Company Name" customerRow(0)("City") = "Seattle"
DataRow[] customerRow = dataSet1.Tables["Customers"].Select("CustomerID = 'ALFKI'"); customerRow[0]["CompanyName"] = "Updated Company Name"; customerRow[0]["City"] = "Seattle";
Quando você saber o índice da linha que você deseja editar para editar um registro em uma DataTable
Para atualizar registros existentes usando digitado DataSets (índice de linha conhecido)
Atribua um valor para a coluna específica dentro de um DataRow objeto.
DataSets digitado utilizam vinculação antecipada, que expõe os nomes de tabela e coluna como propriedades em tempo de criação.Isso resulta em código que é mais fácil de ser tanto leitura e gravação.
O exemplo a seguir mostra como atualizar os dados a CompanyName e City colunas do registro no quinto a Customers tabela no dataset.Este exemplo pressupõe que você tenha gerado um dataset tipado chamado NorthwindDataSet, e se você tem uma instância deste DataSet tipado chamado northwindDataSet1.
NorthwindDataSet1.Customers(4).CompanyName = "Updated Company Name" NorthwindDataSet1.Customers(4).City = "Seattle"
northwindDataSet1.Customers[4].CompanyName = "Updated Company Name"; northwindDataSet1.Customers[4].City = "Seattle";
Para atualizar registros existentes na sem-tipo DataSets (índice de linha conhecido)
Atribua um valor para a coluna específica dentro de um DataRow objeto.
Os nomes de tabela e coluna de DataSets sem-tipo não estão disponíveis em tempo de criação e deve ser acessado através de seus índices respectivos.
O exemplo a seguir mostra como atualizar os dados nas duas primeiras colunas do registro da primeira tabela no quinto dataSet1.Este exemplo assume que a primeira tabela no dataSet1 corresponde à Customers tabela de banco de dados Northwind e as duas primeiras colunas desta tabela são o CompanyName e City colunas.
DataSet1.Tables(0).Rows(4).Item(0) = "Updated Company Name" DataSet1.Tables(0).Rows(4).Item(1) = "Seattle"
dataSet1.Tables[0].Rows[4][0] = "Updated Company Name"; dataSet1.Tables[0].Rows[4][1] = "Seattle";
O exemplo a seguir mostra como atualizar os mesmos dados que o exemplo anterior, substituindo os índices coleção por tabela e nomes de coluna passado como sequências.Você ainda precisará saber o índice da linha que deseja editar.
DataSet1.Tables("Customers").Rows(4).Item("CompanyName") = "Updated Company Name" DataSet1.Tables("Customers").Rows(4).Item("City") = "Seattle"
dataSet1.Tables["Customers"].Rows[4]["CompanyName"] = "Updated Company Name"; dataSet1.Tables["Customers"].Rows[4]["City"] = "Seattle";
Consulte também
Conceitos
Vinculando controles do Windows Forms a dados em Visual Studio
Preparando seu aplicativo para receber dados
Buscando dados em seu aplicativo.
Controles de vinculação de dados de Visual Studio
Edição de dados em seu aplicativo.