Compartilhar via


Visão geral do TableAdapterManager

O TableAdapterManager é um componente que fornece a funcionalidade para salvar dados em tabelas de dados relacionados. O TableAdapterManager usa os relacionamentos de chave externa que relacionam tabelas de dados para determinar a ordem correta para enviar as inserções, atualizações e exclusões de um conjunto de dados para o banco de dados sem violar as restrições de chave externa (integridade referencial) no banco de dados.

Restrições de chave externa são as regras de consistência em um banco de dados que controlam o comportamento de inserção, atualização e exclusão de registros relacionados. São as restrições de chave externa que impedem que registros pai sejam excluídos enquanto registros filho relacionados em outra tabela ainda existem.

O processo geral de salvar dados em tabelas de dados relacionadas usando um TableAdapterManager é chamado Atualização hierárquica.

Salvar dados modificados de tabelas de dados relacionadas é um pouco mais complexo do que salvar dados de uma tabela simples. Isso ocorre porque os comandos Inserir, Update, e Delete para cada tabela relacionada precisam ser executados em uma determinada ordem para evitar a violação das restrições de chave externa que são definidas no banco de dados. Por exemplo, considere um aplicativo para entrada de pedido com o qual você pode gerenciar os clientes novos e existentes e pedidos. Caso você precise excluir um registro de cliente existente, você deve primeiro excluir todos os pedidos do cliente. Se você estiver adicionando um registro de novo cliente (com uma ordem), primeiro você deve inserir o registro do novo cliente antes de inserir os pedidos do cliente devido às restrições de chave externa que existem nas tabelas. Como esses exemplos mostram, você precisa extrair subconjuntos específicos de dados e enviar as atualizações (inserções, atualizações e exclusões) na ordem correta para manter a integridade referencial e evitar conflitos com as restrições de chave externa no banco de dados.

Criando TableAdapterManagers

Por padrão, uma classe TableAdapterManager é gerada quando você cria um dataset tipado em um projeto. Mais especificamente, é o valor na propriedade Hierarchical Update de um DataSet que determina se um TableAdapterManager é criado. Se Hierarchical Update estiver definida como True, um TableAdapterManager é criado; Hierarchical Update estiver definida como False, um dataset que não contém um TableAdapterManager é criado. Para obter mais informações, consulte Como: Habilitar e desabilitar a atualização hierárquica.

ObservaçãoObservação

Por padrão, conjuntos de dados adicionados a projetos criados em versões anteriores do Visual Studio têm a propriedade Hierarchical Update definida como False. Isso significa que atualização hierárquica está desativada e um TableAdapterManager não é criado. Para obter informações sobre como adicionar um TableAdapterManager a um conjunto de dados existente, consulte Como: Implementar a atualização hierárquica em projetos existentes de Visual Studio.

Referência a TableAdapterManager

A classe TableAdapterManager não é parte do .NET Framework. Portanto, você não pode pesquisá-la na documentação. Ela é criada em tempo de design como parte do processo de criação do DataSet.

A seguir são os métodos usados frequentemente e propriedades da classe TableAdapterManager:

Membro

Descrição

Método UpdateAll

Salva todos os dados de todas as tabelas de dados.

Propriedade BackUpDataSetBeforeUpdate

Booleano Determina se uma cópia de backup do conjunto de dados deve ser criada antes de executar o método TableAdapterManager.UpdateAll.

tableNameTableAdapter propriedade

Representa um TableAdapter. O TableAdapterManager gerado contém uma propriedade para cada TableAdapter que ele gerencia. Por exemplo, um DataSet com uma tabela Clientes e Pedidos é gerado com um TableAdapterManager que contém propriedades CustomersTableAdapter e OrdersTableAdapter.

Propriedade UpdateOrder

Controla a ordem de execução dos comandos individuais Insert, Update, e Delete. Definir isso como um dos valores na enumeração TableAdapterManager.UpdateOrderOption.

Por padrão, o UpdateOrder é definido como InsertUpdateDelete. Isso significa que Inserções são executadas para todas as tabelas no dataset, em seguida, Atualizações são realizadas para todas as tabelas no dataset, em seguida, Exclusões são realizadas para todas as tabelas no dataset. Para obter mais informações, consulte Como: Definir a ordem ao executar uma atualização hierárquica.

Consulte também

Tarefas

Demonstra Passo a passo: Salvar dados de tabelas de dados relacionadas (atualização hierárquica)

Demonstra Passo a passo: Criando um aplicativo de dados simples

Conceitos

Visão geral do TableAdapter

Outros recursos

Atualização hierárquica

Salvando dados