Compartilhar via


Como atualizar dados usando um TableAdapter

 

Publicado: abril de 2016

Depois que os dados no conjunto de dados foi modificados e validados, você pode enviar os dados atualizados para uma chamada databaseby o Update método de um TableAdapter. O Update atualizará uma única tabela de dados e executar o comando correto (INSERT, UPDATE ou DELETE) com base no método de RowState de cada linha de dados na tabela. Quando um conjunto de dados tiver tabelas relacionadas, o Visual Studio gera uma classe de TableAdapterManager que você deve usar para fazer as atualizações. TableAdapterManager garante que as atualizações são feitas a ordem correta com base nas restrições de chave estrangeira definidas no banco de dados. Quando você usa controles ligados a dados, a arquitetura de vinculação de dados cria uma variável de membro de TableAdapterManager para você, chamado tableAdapterManager. Para obter mais informações, consulte Visão geral de atualização hierárquica.

Dica

Pois tentar atualizar uma fonte de dados com o conteúdo de um conjunto de dados pode causar erros, você deve colocar o código que chama o adaptador Update método dentro um try/catch bloco.

O procedimento exato para atualizar uma fonte de dados pode variar dependendo das necessidades de negócios, mas o aplicativo deve incluir as seguintes etapas:

  1. Chamar o adaptador Update método em um try/catch bloco.

  2. Se uma exceção é detectada, localize a linha de dados que causou o erro. Para obter mais informações, consulte Como localizar linhas com erros.

  3. Reconcilie o problema nos dados de linha (programaticamente se você puder, ou apresentando a linha inválida para o usuário para modificação) e, em seguida, tente novamente a atualização (HasErrors, GetErrors).

Salvando dados em um banco de dados

Chamar o Update método de um TableAdapter, passando o nome da tabela de dados que contém os valores a serem gravados no banco de dados.

Para atualizar um banco de dados usando um TableAdapter

  • Coloque o adaptador Update método em um try/catch bloco. O exemplo a seguir mostra como tentar uma atualização de dentro um try/catch bloco com o conteúdo a Customers na tabela NorthwindDataSet.

                try
                {
                    this.Validate();
                    this.customersBindingSource.EndEdit();
                    this.customersTableAdapter.Update(this.northwindDataSet.Customers);
                    MessageBox.Show("Update successful");
                }
                catch (System.Exception ex)
                {
                    MessageBox.Show("Update failed");
                }
    
            Try
                Me.Validate()
                Me.CustomersBindingSource.EndEdit()
                Me.CustomersTableAdapter.Update(Me.NorthwindDataSet.Customers)
                MsgBox("Update successful")
    
            Catch ex As Exception
                MsgBox("Update failed")
            End Try
    

Consulte também

Salvar dados no banco de dados