读书人

於一次性往DataSet填充多表的

发布时间: 2012-03-14 12:01:12 作者: rapoo

於一次性往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)

读书人网 >VB Dotnet

热点推荐