Chinaunix首页 | 论坛 | 博客
  • 博客访问: 743230
  • 博文数量: 769
  • 博客积分: 6000
  • 博客等级: 准将
  • 技术积分: 4985
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-15 16:37
文章分类

全部博文(769)

文章存档

2011年(1)

2008年(768)

我的朋友

分类:

2008-10-15 16:37:37

        SqlDataAdapter对象

        1. SqlDataAdapter特性

        SqlDataAdapter类用作ADO.NET对象模型中和数据连接部分和未连接部分之间的桥梁。SqlDataAdapter从数据库中获取数据,并将其在DataSet中。SqlDataAdapter也可能取得DataSet中的更新,并将它们提交给数据库。

        SqlDataAdapter是为处理脱机数据而设计的,调用其Fill方法填充DataSet时甚至不需要与数据库的活动连接。即如果调用Fill方法时,SqlDataAdapter与数据库的连接不是打开时,SqlDataAdapter将打开数据库连接,查询数据库,提取查询结果,将查询结果填入DataSet,然后关闭也数据库的连接。

        2. SqlDataAdapter的设置

        SqlCommand属性

        SqlDataAdapter将查询结果到DataSet中时,SqlDataAdapter使用SqlCommand和SqlConnection与数据库进行通信。SqlDataAdapter在内部使用SqlDataReader获取结果,并将信息存储到DataSet的新行。SqlCommand类的属性包括SelectCommand、InsertCommand、UpdateCommand、DeleteCommand分别对应数据库的查询、插入、更新和删除操作。

        TabbleMappings集合

        默认情况下,SqlDataAdapter假定SqlDataReader中的列与DataSet中的列匹配,但实际情况中往往期望DataSet的架构不同于数据库的架构,因此SqlDataAdapter提供了一种将查询结果映射到DataSet结果的机制:TableMappings集合。

        SqlDataAdapter的TableMappings属性返回一个DataTableMappingsConnention对象,它包含DataTableMapping对象的集合。每个对象允许在数据库中的一个表(或视图或存储过程)与DataSet中相对应的DataTable的名称之间建立一种映射;TableMappings对象具有ColumnMappings属性,它返回DataColumnMappings对象组成的集合,每个DataColumnMappings对象对应数据库查询结果中的一列映射到DataSet中DataTable中的一列。示例代码如下:

        Using System.Data.Common;

        SqlDataAdapter  da=new  SqlDataAdapter();

        //初始化DataAdapter

        DataTableMapping  tableMap;

        tableMap=da.TableMappings.Add(“Table”,”Employees”);

        tableMap.ColumnMappings.Add(“EmpID”,”EmployeeID”);

        tableMap.ColumnMappings.Add(“LName”,”LastName”);

[1]   

【责编:michael】

--------------------next---------------------

阅读(390) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~