Compartilhar via


Acessar diretamente o banco de dados com um TableAdapter 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.

Além dos InsertCommand, UpdateCommand e DeleteCommand, os TableAdapters são criados com métodos que podem ser executados diretamente no banco de dados. Você pode chamar esses métodos (TableAdapter.Inserte TableAdapter.UpdateTableAdapter.Delete) para manipular dados diretamente no banco de dados.

Se você não quiser criar esses métodos diretos, defina a propriedade tableAdapter GenerateDbDirectMethods como false na janela Propriedades . Se alguma consulta for adicionada a um TableAdapter, além da consulta principal do TableAdapter, elas serão consultas autônomas que não geram esses DbDirect métodos.

Enviar comandos diretamente para um banco de dados

Chame o método TableAdapter DbDirect que executa a tarefa que você está tentando realizar.

Para inserir novos registros diretamente em um banco de dados

  • Chame o método do TableAdapter Insert, passando os valores para cada coluna como parâmetros. O procedimento a seguir usa a Region tabela no banco de dados Northwind como exemplo.

    Observação

    Se você não tiver uma instância disponível, instancie o TableAdapter que deseja usar.

    NorthwindDataSetTableAdapters.RegionTableAdapter regionTableAdapter = 
        new NorthwindDataSetTableAdapters.RegionTableAdapter();
    
    regionTableAdapter.Insert(5, "NorthWestern");
    

Para atualizar registros diretamente em um banco de dados

  • Chame o método tableAdapter Update , passando os valores novos e originais para cada coluna como parâmetros.

    Observação

    Se você não tiver uma instância disponível, instancie o TableAdapter que deseja usar.

    NorthwindDataSetTableAdapters.RegionTableAdapter regionTableAdapter = 
        new NorthwindDataSetTableAdapters.RegionTableAdapter();
    
    regionTableAdapter.Update(1, "East", 1, "Eastern");
    

Para excluir registros diretamente de um banco de dados

  • Chame o método TableAdapter Delete , passando os valores para cada coluna como parâmetros do Delete método. O procedimento a seguir usa a Region tabela no banco de dados Northwind como exemplo.

    Observação

    Se você não tiver uma instância disponível, instancie o TableAdapter que deseja usar.

    NorthwindDataSetTableAdapters.RegionTableAdapter regionTableAdapter = 
        new NorthwindDataSetTableAdapters.RegionTableAdapter();
    
    regionTableAdapter.Delete(5, "NorthWestern");