Compartilhar via


Salvar dados com os métodos TableAdapter DBDirect em aplicativos do .NET Framework

Observação

A DataSet classe e as classes relacionadas são tecnologias herdadas do .NET Framework do início dos anos 2000 que permitem que os aplicativos trabalhem com dados na memória enquanto os aplicativos são desconectados do banco de dados. As tecnologias são especialmente úteis para aplicativos que permitem que os usuários modifiquem dados e persistam as alterações no banco de dados. Embora os conjuntos de dados sejam uma tecnologia comprovadamente bem-sucedida, a abordagem recomendada para novos aplicativos .NET é usar o Entity Framework Core. O Entity Framework fornece uma maneira mais natural de trabalhar com dados tabulares como modelos de objeto e tem uma interface de programação mais simples.

Este tutorial fornece instruções detalhadas para executar instruções SQL diretamente em um banco de dados usando os métodos DBDirect de um TableAdapter. Os métodos DBDirect de um TableAdapter fornecem um bom nível de controle sobre as atualizações do banco de dados. Você pode usá-los para executar instruções SQL específicas e procedimentos armazenados, chamando os métodos Insert, Update e Delete conforme necessário para o seu aplicativo (em oposição ao método sobrecarregado Update que executa as instruções UPDATE, INSERT e DELETE tudo em uma única chamada).

Durante este tutorial, você aprenderá a:

Pré-requisitos

As etapas neste tutorial funcionam com aplicativos do Windows Forms do .NET Framework.

Este tutorial usa o SQL Server Express LocalDB e o banco de dados de exemplo Northwind.

  1. Se você não tiver o SQL Server Express LocalDB, instale-o na página de download do SQL Server Express ou por meio do Instalador do Visual Studio. No Instalador do Visual Studio, você pode instalar o SQL Server Express LocalDB como parte da carga de trabalho Armazenamento e processamento de dados ou como um componente individual.

  2. Instale o banco de dados de exemplo Northwind seguindo estas etapas:

    1. No Visual Studio, abra a janela Pesquisador de Objetos do SQL Server. (O Pesquisador de Objetos do SQL Server é instalado como parte da carga de trabalho de armazenamento e processamento de dados no Instalador do Visual Studio.) Expanda o nó do SQL Server . Clique com o botão direito do mouse na instância do LocalDB e selecione Nova Consulta.

      Uma janela do editor de consultas é aberta.

    2. Copie o script Transact-SQL da Northwind para sua área de transferência. Esse script T-SQL cria o banco de dados Northwind do zero e o preenche com dados.

    3. Cole o script T-SQL no editor de consultas e, em seguida, escolha o botão Executar.

      Após um curto período de tempo, a consulta termina de ser executada e o banco de dados Northwind é criado.

Criar um aplicativo do Windows Forms

A primeira etapa é criar um aplicativo do Windows Forms (.NET Framework). Crie um projeto usando o tipo de projeto de aplicativo do Windows Forms usando C# ou Visual Basic.

Observação

O código deste tutorial está disponível no C# e no Visual Basic. Para alternar o idioma de código nesta página entre C# e Visual Basic, use o comutador de linguagem de código na parte superior da página no lado direito.

Crie uma origem de dados a partir do seu banco de dados

Esta etapa usa o Assistente de Configuração da Fonte de Dados para criar uma fonte de dados com base na Region tabela no banco de dados de exemplo Northwind. Você deve ter acesso ao banco de dados de exemplo Northwind para criar a conexão. Para obter informações sobre como configurar o banco de dados de exemplo Northwind, consulte Como instalar bancos de dados de exemplo.

Para criar a fonte de dados

  1. No menu Dados , selecione Mostrar Fontes de Dados.

    A janela Fontes de Dados é aberta.

  2. Na janela Fontes de Dados , selecione Adicionar Nova Fonte de Dados para iniciar o Assistente de Configuração da Fonte de Dados.

  3. Na tela Escolher um Tipo de Fonte de Dados , selecione Banco de Dados e selecione Avançar.

  4. Na tela Escolher Sua Conexão de Dados , siga um destes procedimentos:

    • Se uma conexão de dados com o banco de dados de exemplo Northwind estiver disponível na lista suspensa, selecione-a.

      - ou -

    • Selecione Nova Conexão para iniciar a caixa de diálogo Adicionar/Modificar Conexão .

  5. Se o banco de dados exigir uma senha, selecione a opção para incluir dados confidenciais e selecione Avançar.

  6. Na tela Salvar cadeia de conexão no arquivo de configuração do aplicativo, selecione Avançar.

  7. Expanda o nó Tabelas na tela Escolher Objetos do Banco de Dados.

  8. Selecione a Region tabela e, em seguida, selecione Concluir.

    O NorthwindDataSet é adicionado ao seu projeto e a Region tabela é exibida na janela Fontes de Dados .

Adicionar controles ao formulário para exibir os dados

Crie os controles associados a dados arrastando itens da janela Fontes de Dados para seu formulário.

Para criar controles vinculados a dados no formulário do Windows, arraste o nó Região principal da janela Fontes de Dados para o formulário.

Um DataGridView controle e uma barra de ferramentas (BindingNavigator) para navegar em registros aparecem no formulário. Um NorthwindDataSet, RegionTableAdapter, BindingSource e BindingNavigator aparecem na bandeja de componentes.

Para adicionar botões que chamam os métodos individuais DbDirect de um TableAdapter

  1. Arraste três Button controles da Caixa de Ferramentas para o Form1 (abaixo do RegionDataGridView).

  2. Defina as seguintes propriedades Nome e Texto em cada botão.

    Nome Texto
    InsertButton Inserir
    UpdateButton Atualização
    DeleteButton excluir

Para adicionar código para inserir novos registros no banco de dados

  1. Selecione InsertButton para criar um manipulador de eventos para o evento de clique e abra seu formulário no editor de código.

  2. Substitua o InsertButton_Click manipulador de eventos pelo seguinte código:

    private void InsertButton_Click(object sender, EventArgs e)
    {
        Int32 newRegionID = 5;
        String newRegionDescription = "NorthEastern";
    
        try
        {
            regionTableAdapter1.Insert(newRegionID, newRegionDescription);
        }
        catch (Exception ex)
        {
            MessageBox.Show("Insert Failed");
        }
        RefreshDataset();
    }
    
    
    private void RefreshDataset()
    {
        this.regionTableAdapter1.Fill(this.northwindDataSet1.Region);
    }
    

    Observação

    Dependendo da versão do Visual Studio e dos modelos de projeto usados, os nomes de variáveis como regionTableAdapter ou regionTableAdapter1 usados nesse código podem ou não ter um 1 à direita no código gerado. Faça as correções em seu código para garantir que o nome correto seja usado em todos os lugares. O Visual Studio mostra um rabiscos vermelho em que o nome está incorreto.

Para adicionar código para atualizar registros no banco de dados

  1. Clique duas vezes no UpdateButton para criar um manipulador de eventos para o evento de clique e abra seu formulário no editor de código.

  2. Substitua o UpdateButton_Click manipulador de eventos pelo seguinte código:

    private void UpdateButton_Click(object sender, EventArgs e)
    {
        Int32 newRegionID = 5;
        
        try
        {
            regionTableAdapter1.Update(newRegionID, "Updated Region Description", 5, "NorthEastern");
        }
        catch (Exception ex)
        {
            MessageBox.Show("Update Failed");
        }
        RefreshDataset();
    }
    

Para adicionar código para excluir registros do banco de dados

  1. Selecione DeleteButton para criar um manipulador de eventos para o evento de clique e abra seu formulário no editor de código.

  2. Substitua o DeleteButton_Click manipulador de eventos pelo seguinte código:

    private void DeleteButton_Click(object sender, EventArgs e)
    {
        try
        {
            regionTableAdapter1.Delete(5, "Updated Region Description");
        }
        catch (Exception ex)
        {
            MessageBox.Show("Delete Failed");
        }
        RefreshDataset();
    }
    

Executar o aplicativo

  • Selecione F5 para executar o aplicativo.

  • Selecione o botão Inserir e verifique se o novo registro aparece na grade.

  • Selecione o botão Atualizar e verifique se o registro foi atualizado na grade.

  • Selecione o botão Excluir e verifique se o registro foi removido da grade.

Próximas etapas

Dependendo dos requisitos do aplicativo, há várias etapas que talvez você queira executar depois de criar um formulário associado a dados. Alguns aprimoramentos que você pode fazer neste tutorial incluem:

  • Adicionando a funcionalidade de pesquisa ao formulário.

  • Adicionando tabelas adicionais ao conjunto de dados selecionando Configurar o DataSet com o Assistente na janela Fontes de Dados . Você pode adicionar controles que exibem dados relacionados arrastando os nós relacionados para o formulário. Para obter mais informações, consulte Relações em conjuntos de dados.