Partilhar via


Como: edição 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.

    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.

    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 para atualizar os dados no CompanyName: e City colunas do Registro quinto na Customers tabela no DataSet

    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 quinto da primeira tabela no Dataset1, acessar os valores de dados com as tabelas, linhas, e índices coleção itens (colunas):

    DataSet1.Tables(0).Rows(4).Item(0) = "Updated Company Name"
    DataSet1.Tables(0).Rows(4).Item(1) = "Seattle"
    
    dataSet1.Tables[0].Rows[4].ItemArray[0] = "Updated Company Name";
    dataSet1.Tables[0].Rows[4].ItemArray[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 precisa saber o índice da linha você 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

Visão Geral da Exibição dados

Outros recursos

Editing Data in a Table

Exibindo visão geral de dados

Outros recursos

Conectando-se a Dados no Visual Studio

Preparando seu aplicativo para receber dados

Buscando dados em seu aplicativo

Exibindo dados em formulários em aplicativos do Windows

Editar dados no seu aplicativo

Validando Dados

Salvando dados