专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > VB Dotnet

關於一次性往DataSet填充多個表的問題,该如何解决

发布时间:2011-06-23 15:13:27 文章来源:www.iduyao.cn 采编人员:星星草
關於一次性往DataSet填充多個表的問題
Dim   Sql   As   String
                Sql   =   "select   *   from     PPTM_Received   select   *   from     PPTM_Building   select   *   from     PPTM_Contract "
                myDataAdapter.SelectCommand.CommandText   =   Sql
                myDataAdapter.Fill(MyDataSet)
用此法是可以實現的,不過只能使用Index來取得對應表的資料,如:
                dgvReceived.DataSource   =   MyDataSet.Tables(0)
                dgvBuilding.DataSource   =   MyDataSet.Tables(1)
                dgvContract.DataSource   =   MyDataSet.Tables(2)
現在要實現的是:
能否在填充的時候就給這幾個表指定名稱呢?就像填充單個表一樣可以指定表名,如:myDataAdapter.Fill(MyDataSet,   "tab_Contract ")

------解决方案--------------------
Dim Sql As String
Sql = "select * from PPTM_Received;select * from PPTM_Building;select * from PPTM_Contract "
myDataAdapter.SelectCommand.CommandText = Sql

da.TableMappings.Add( "PPTM_Received1 ", "PPTM_Building ");
da.TableMappings.Add( "PPTM_Received2 ", "PPTM_Contract ");
myDataAdapter.Fill(MyDataSet, "PPTM_Received ")

Response.Write(ds.Tables[0].TableName)
Response.Write(ds.Tables[1].TableName)
Response.Write(ds.Tables[2].TableName)
------解决方案--------------------
amandag(高歌)方法是正确的
============

myDataAdapter.TableMappings.Add( "PPTM_Received1 ", "PPTM_Received ");
myDataAdapter.TableMappings.Add( "PPTM_Received2 ", "PPTM_Building ");
myDataAdapter.TableMappings.Add( "PPTM_Received3 ", "PPTM_Contract ");

myDataAdapter.Fill(MyDataSet)

Response.Write(ds.Tables[0].TableName)
Response.Write(ds.Tables[1].TableName)
Response.Write(ds.Tables[2].TableName)
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: