取回第一个数据表后要从数据源再取回第二个数据表,要修改DataSetCommand 对象中SelectCommand 属性的CommandText 属性,将CommandText 的内容改成我们要从数据源取回数据的叙述。因为SelectCommand 属性本身就是Command 对象,所以设定SelectCommand
的方式和设定Command 对象的方法一样;修改完毕后就可以再利用DataSetCommand 对象的FillDataSet 方法将数据取回。下列范例将MyWeb 数据库中的Members 以及Orders 数据表取回:
<%@Import Namespace=System.Data.ADO%>
<%@Import Namespace=System.Data%>
<Script Language="VB" Runat="Server">
Sub Page_Load(Sender As Object, e As EventArgs)
Dim strConStr As String = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=C:InetPubwwwrootCRCH05MyWeb.mdb"
Dim strComStr As String = "Select * From Members"
Dim dscA As ADODataSetCommand = New
ADODataSetCommand(strComStr,strConStr)
Dim dsDataSet As DataSet = New dataset()
dscA.FillDataSet(dsDataSet, "Members")
dscA.SelectCommand.CommandText = "Select * From Orders"
dscA.FillDataSet(dsDataSet, "Orders")
End Sub
</SCRIPT>
上述程序代码将数据从数据源取回后,填入名为dsDataSet 的DataSet 物件中。第一个DataTable在Tables 集合中的Index 值为0,而第二个填入的DataTable 在Tables 集合中的Index 值为1。