da.tablemappings.add("table","categorytable")进行映射的目的是什么? 请给出本质解释! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 为后续操作搭建了一座桥梁,告诉数据库categorytable对应什么数据结构,将他的结构和数据传给调用它的组件,并取名为categorytable da.tablemappings.add("table","categorytable")我也不明白"table" 是什么意思。最好能有个例子。 TableMappings并不能映射数据库表和DataSet中表的关系。它只是能映射DataSet中原有表名和别名的关系。比如da.TableMappings.Add("A","B");da.Fill(ds,"A");DataGrid.DataSource =ds;DataGrid.DataMember ="B" //如果不加TableMappings,应该是:DataGrid.DataMember ="A"这样的语句可以通过。 da.tablemappings.add("table","categorytable")在是在数据集多表的情况下使用达到表的映射。Sql server中的T-Sql支持同时返回多个记录集函数原形如下:public DataTableMapping DataTableMappingCollection.Add( string sourceTable, string dataSetTable);将如存储过程返回3个记录集,CREATE PROCEDURE GetCustomerOrdersInfoASSELECT CustomerID,CompanyName,ContactName FROM CustomersSELECT OrderID,OrderDate,CustomerID FROM OrdersSELECT OrderID,ProductID,UnitPrice,Quantity,Discount FROM [Order Details]GO那在Ado.net这三个记录就会被默认为:table -〉Customers,table1->Orders,table2->Order Details,如果你的DataSet也包含了三个DataTable,那你就要在DataAdapter.Fill方法被调用之前指定好实际对应的表,如果由Ado.net自己指定多个表就变得不灵活了,而且有些时候会有表结构不符等问题,映射如下: dataAdapter.TableMappings.Add("Table","Customers"); dataAdapter.TableMappings.Add("Table1","Orders"); dataAdapter.TableMappings.Add("Table2","Order Details");//上面的Customers,Orders,Order Details参数是DataSEt中的DAtaTable表的名字,跟数据库无关,==========================用看具体的实例,就直接看我的一片文章。http://blog.csdn.net/zhzuo/archive/2004/08/06/67016.aspx IIS如何设置UrlRewrite伪静态首页? 闭包(讨论) 怎么捕抓两个方向键一起按 C#的类和对象如何理解? 一个账号登录多个WEB项目该怎么实现? 请问我想写这相关一个关于时间字符串的格式,例如2004年01月23日这样的格式?应该怎么写? 关于调用COM的问题 ref在传递参数的作用是什么 请问各位高手!!!!!!!!!!!!!!!!!!!!!!!! 怎样查询MX记录? winform程序,想在程序关闭前,播放一段片尾,如何操作? donet的winform中怎样实现html的<hr>水平分隔线啊
我也不明白"table" 是什么意思。
最好能有个例子。
它只是能映射DataSet中原有表名和别名的关系。
比如
da.TableMappings.Add("A","B");
da.Fill(ds,"A");
DataGrid.DataSource =ds;
DataGrid.DataMember ="B" //如果不加TableMappings,应该是:DataGrid.DataMember ="A"
这样的语句可以通过。
Sql server中的T-Sql支持同时返回多个记录集
函数原形如下:
public DataTableMapping DataTableMappingCollection.Add(
string sourceTable,
string dataSetTable
);
将如存储过程返回3个记录集,
CREATE PROCEDURE GetCustomerOrdersInfo
AS
SELECT CustomerID,CompanyName,ContactName FROM Customers
SELECT OrderID,OrderDate,CustomerID FROM Orders
SELECT OrderID,ProductID,UnitPrice,Quantity,Discount FROM [Order Details]GO
那在Ado.net这三个记录就会被默认为:
table -〉Customers,
table1->Orders,
table2->Order Details,
如果你的DataSet也包含了三个DataTable,那你就要在DataAdapter.Fill方法被调用之前指定好实际对应的表,如果由Ado.net自己指定多个表就变得不灵活了,而且有些时候会有表结构不符等问题,
映射如下:
dataAdapter.TableMappings.Add("Table","Customers");
dataAdapter.TableMappings.Add("Table1","Orders");
dataAdapter.TableMappings.Add("Table2","Order Details");
//上面的Customers,Orders,Order Details参数是DataSEt中的DAtaTable表的名字,跟数据库无关,
==========================
用看具体的实例,就直接看我的一片文章。
http://blog.csdn.net/zhzuo/archive/2004/08/06/67016.aspx