Поделиться через


Прямой доступ к базе данных с помощью TableAdapter в приложениях платформа .NET Framework

Примечание.

Наборы данных и связанные классы являются устаревшими технологиями платформа .NET Framework с начала 2000-х годов, которые позволяют приложениям работать с данными в памяти во время отключения приложений от базы данных. Технологии особенно полезны для приложений, которые позволяют пользователям изменять данные и сохранять изменения обратно в базу данных. Хотя наборы данных оказались очень успешными, мы рекомендуем новым приложениям .NET использовать Entity Framework Core. Entity Framework предоставляет более естественный способ работы с табличными данными в виде объектных моделей, и он имеет более простой интерфейс программирования.

InsertCommandПомимо табличного UpdateCommandкода и DeleteCommandтаблицыAdapters создаются с помощью методов, которые могут выполняться непосредственно в базе данных. Эти методы (TableAdapter.Insert, TableAdapter.Updateи TableAdapter.Delete) можно вызывать для управления данными непосредственно в базе данных.

Если вы не хотите создавать эти прямые методы, задайте для свойства TableAdapter GenerateDbDirectMethods значение false в окне "Свойства ". Если какие-либо запросы добавляются в TableAdapter в дополнение к основному запросу TableAdapter, они являются автономными запросами, которые не создают эти DbDirect методы.

Отправка команд непосредственно в базу данных

Вызовите метод TableAdapter DbDirect , выполняющий задачу, которую вы пытаетесь выполнить.

Вставка новых записей непосредственно в базу данных

  • Вызовите метод TableAdapter Insert , передавая значения для каждого столбца в качестве параметров. Следующая процедура использует таблицу Region в базе данных Northwind в качестве примера.

    Примечание.

    Если у вас нет доступного экземпляра, создайте экземпляр TableAdapter, который вы хотите использовать.

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

Обновление записей непосредственно в базе данных

  • Вызовите метод TableAdapter Update , передавая новые и исходные значения для каждого столбца в качестве параметров.

    Примечание.

    Если у вас нет доступного экземпляра, создайте экземпляр TableAdapter, который вы хотите использовать.

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

Удаление записей непосредственно из базы данных

  • Вызовите метод TableAdapter Delete , передавая значения для каждого столбца Delete в качестве параметров метода. Следующая процедура использует таблицу Region в базе данных Northwind в качестве примера.

    Примечание.

    Если у вас нет доступного экземпляра, создайте экземпляр TableAdapter, который вы хотите использовать.

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