武汉SEO
武汉网站优化
武汉网络推广
威网SEO  

网站优化软件开发入门6-TableMappings

发布者:管理员 发布时间:2010-8-20 17:33:48 阅读:211

TableMappings: 表名映射:

调用SqlDataAdapter对象Fill方法过程的数据库连接的打开与关闭

SqlDataAdapter的Fill方法调用前不需要有活动的SqlConnection对象,SqlDataAdapter会自己打开strConn语句中的数据库,获取查询结果后,关闭与数据库的连接。如果已经存在SqlConnection对象,无论是否已经打开,SqlDataAdapter执行完Fill方法后,均会将SqlConnection对象返回到原始状态。

当程序中的多个SqlDataAdapter对象使用都一个SqlConnection对象时,为避免多次打开与关闭SqlConnection对象,应该在调用SqlDataAdapter的Fill方法前调用SqlConnection的Open方法打开数据库的连接,待完成Fill调用后再调用SqlConnection的Close方法关闭数据库的连接。

DataSet中数据的更新

TableMappings:
表名映射:
生成dataAdapter之后再进行表名映射
dataAdapter.TableMappings.Add("Table","Customer")
dataAdapter.Fill(dataSet)
这时Table的别名就变为Customer(对dataSet用Table或Customer操作都可以),dataSet.Tables("Customer")就可以引用到这个表

例子(绑定到DataGrid)

TableMappings映射

TabbleMappings集合控制SqlDataAdapter如何将DataSet映射到数据库。如果保持TabbleMappings集合为空,调用Fill方法,然后将DataSet作为参数,而不指定表名,SqlDataAdapter将假定您希望使用一个名为“Table”的DataTable来装载数据。

SqlDataAdapter.TableMappings.Add(“Table”,”Employees”)

此语句的作用是将DataSet中原来名字为“Table”的DataTable命名为“Employees”,DataSet填充数据时,按查询结果集的顺序依次填充DataSet中的Table、Table1、Table2……,所以给DataTable命名时需留意该DataTable是否为当前将要使用的对象。

TableMappings和ColumnMappings的AddRange方法

构造并赋值DataTableMapping、DataColumnMapping数组,再调用它们的AddRange方法将该集合整体添加到映射数组。 DataTableMapping tableMap;

dataAdapter.TableMappings.Add("ADONET","Customer")
dataAdapter.Fill(dataSet,"ADONET")
列名映射:
dataAdapter.TableMappings.Add("Table","Customer")
dataAdapter.TableMappings("Customer").ColumnMappings.Add("CustomerID","ID)
dataAdapter.FIll(dataSet,"Customer")
在dataAdapter中添加表名映射后,相对有两个表,一个表是原先的表,另一个表是映射后的表,列名也经过相应的映射,因此在Fill时要 指定是哪个表,否则显示的时候就不会显示映射后的列名。另外在表名映射后,在数据绑定时只能指定dataMember为Student。

MissingMappingAction属性

当SqlDataAdapter提取查询结果来填充DataSet时,它将检查TableMappings集合,如果存在结果集中列不在TableMappings集合时,它将查看MissingMappingAction属性的值来决定如何操作。

adapter.TableMappings.Add("Table", "Virtual_Paragraph");
command = new OleDbCommand
("SELECT ID, ArticleID, ParagraphOrder,ParagraphContent,ParagraphType FROM virtual_Paragraph", connection);
command.CommandType = CommandType.Text;
adapter.SelectCommand = command;
adapter.Fill(XGroupDataSet);

// 读ARTICLE_REPLACE_OPTION表
adapter = new OleDbDataAdapter();
adapter.TableMappings.Add("Table", "Virtual_Article_Replace_Class");
command = new OleDbCommand
("SELECT ID, ClassCType, ClassName, ClassCName,ClassChangeOption FROM Virtual_Article_Replace_Class", connection);
command.CommandType = CommandType.Text;
adapter.SelectCommand = command;
adapter.Fill(XGroupDataSet);

// 读WEBSITE表,建立客户表。注意:与别的不同,数据库中没有单独的客户表,且仅有一列
adapter = new OleDbDataAdapter();
adapter.TableMappings.Add("Table", "Client");
command = new OleDbCommand
("SELECT DISTINCT WebSite FROM Client_WebChannel", connection);
command.CommandType = CommandType.Text;
adapter.SelectCommand = command;
adapter.Fill(XGroupDataSet);

// 读WEBSITE表
adapter = new OleDbDataAdapter();

网站优化软件开发入门6-TableMappings:发表评论

weihtpc什么时候来了?2010-11-25
 评论人:     网站博客地址:
 评论内容:
   【打印本页 关闭窗口 向上
   佳讯网站优化网站推广导航
   SEO网站建设优化推广营销产品与服务
   文章排行
   友情链接
   工具下载
VE企业电视台 武汉网站推广 南京网站优化 武汉网络营销 赢时代网络营销 武汉SEO优化 南昌SEO 武汉讯嘉信息 视频会议系统 武汉网站优化
SD气动执行机构 武汉精英学校 武汉网络营销 网络营销 武汉SEO优化 HTPC门户 武汉讯嘉信息 武汉热线 长沙seo
南宁网站建设 武汉幼儿园 双马来酰亚胺 SEO培训 SEO培训 单马来酰亚胺 广西网站建设 东西湖幼儿园 视讯企业网
佳讯营销热线:027-86700740 佳讯网站优化 版权所有 武汉讯嘉信息技术 提供技术支持 后台登陆
服务关键词:武汉网站优化武汉网站网站推广武汉seo武汉seo公司
互联网增值电信业务经营许可证鄂 B2-20090054营业执照4201002121903