如何:使用 TableAdapter 直接访问数据库

除了 InsertCommand、UpdateCommand 和 DeleteCommand 之外,创建 TableAdapter 时还生成了一些可以直接在数据库上执行的方法。 可以直接调用这些方法(TableAdapter.Insert、TableAdapter.Update 和 TableAdapter.Delete)对数据库中的数据进行操作。

如果不想创建这些直接方法,可在**“属性”**窗口中将 TableAdapter 的 GenerateDbDirectMethods 属性设置为 false。 除了 TableAdapter 的主查询之外,所有添加到 TableAdapter 的查询也是独立查询 -- 它们不生成这些 DbDirect 方法。

直接向数据库发送命令

调用执行您尝试完成的任务的 TableAdapter DbDirect 方法。

直接向数据库中插入新记录

  • 调用 TableAdapter 的 Insert 方法,为每一列传入值作为参数。 以下过程使用 Northwind 数据库的 Region 表作为示例。

    提示

    如果没有实例可用,请实例化您要使用的 TableAdapter。

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

直接在数据库中更新记录

  • 调用 TableAdapter 的 Update 方法,以参数的形式为每一列传入新值和原始值。

    提示

    如果没有实例可用,请实例化您要使用的 TableAdapter。

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

直接从数据库中删除记录

  • 调用 TableAdapter 的 Delete 方法,为每一列传入值作为 Delete 方法的参数 (此示例使用 Northwind 数据库的 Region 表)。

    提示

    如果没有实例可用,请实例化您要使用的 TableAdapter。

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

请参见

概念

在 Visual Studio 中将控件绑定到数据

TableAdapter 概述

其他资源

Visual Studio 的数据应用程序概述

连接到 Visual Studio 中的数据

准备应用程序以接收数据

将数据获取到应用程序

在应用程序中编辑数据

验证数据

保存数据

命令和参数 (ADO.NET)