六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

親密接觸ASP.Net(9)

[摘要]我們繼續前面的內容,呵呵,這次主要是講DataSet的強大功能啦:)。上次吹了大家的泡泡(說話不算數的意思,湖南人都能聽懂吧:)),這次一定不能再食言了:)在一個DataSet中儲存多個數據表我們在ASP中很多人習慣于使用RecordSet對象來操作數據庫,但是RecordSet有一個的缺點就是一...
我們繼續前面的內容,呵呵,這次主要是講DataSet的強大功能啦:)。上次吹了大家的泡泡(說話不算數的意思,湖南人都能聽懂吧:)),這次一定不能再食言了:)

在一個DataSet中儲存多個數據表

我們在ASP中很多人習慣于使用RecordSet對象來操作數據庫,但是RecordSet有一個的缺點就是一個RecordSet只能儲存一個數據表,當我們需要操作多個表時,不得不在多個RecordSet中來回操作,雖然這些在使用習慣后也沒有什么,但是對一個新手來說,這也是一個很麻煩人的事情。光是那些變量名就可以搞渾你,現在好了,在ASP.Net中,只需要一個DataSet就可以搞定一切。大大的方便了我們的程序。我們還是老樣子,先看一段程序,再來細細講解。

<% @ Page Language="C#" %>
<% @ Import Namespace="System.Data" %>
<% @ Import Namespace="System.Data.ADO" %>
<Script Language="C#" Runat="Server">
public void Page_Load(Object src,EventArgs e)
{
    //聯結語句
    string MyConnString = "Driver={Microsoft Access Driver (*.mdb)}; DBQ=c:/test/test.mdb;";
    string strComm1 = "select * from UserList";
    string strComm2 = "select * from BookList";

    //打開一個聯結
    ADOConnection MyConnection = new ADOConnection(MyConnString);

    //打開兩個DataSetCommand
    ADODataSetCommand MyComm1 = new ADODataSetCommand(strComm1,MyConnection);
    ADODataSetCommand MyComm2 = new ADODataSetCommand(strComm2,MyConnection);

    DataSet MyDataSet = new DataSet();

    //把UserList,BookList表存入DataSet
    MyComm1.FillDataSet(MyDataSet,"UserList");
    MyComm2.FillDataSet(MyDataSet,"BookList");

    DataGrid1.DataSource = MyDataSet.Tables["UserList"].DefaultView;
    DataGrid2.DataSource = MyDataSet.Tables["BookList"].DefaultView;

    DataGrid1.DataBind();
    DataGrid2.DataBind();
}
</script>
<html>
<head>
<title></title>
</head>
<body>
<table>
<tr>
<td>
<ASP:DataGrid id="DataGrid1" runat="server"
BorderColor="black"
BorderWidth="1"
GridLines="Both"
CellPadding="3"
CellSpacing="0"
Font-Name="Verdana"
Font-Size="8pt"
HeaderStyle-BackColor="#aaaadd"
AlternatingItemStyle-BackColor="#eeeeee"
/>
</td>
<td>
<ASP:DataGrid id="DataGrid2" runat="server"
BorderColor="black"
BorderWidth="1"
GridLines="Both"
CellPadding="3"
CellSpacing="0"
Font-Name="Verdana"
Font-Size="8pt"
HeaderStyle-BackColor="#aaaadd"
AlternatingItemStyle-BackColor="#eeeeee"
/>
</td>
</tr>
</table>
</body>
</html>

在上面的例子中,我們打開了一個名為test.mdb的Access數據庫,然后把他其中的兩個表"UserList"和"BookList"使用兩個DataGrid控件顯示出來。顯示的圖片如下:


圖9-1

我們現在來分析一下代碼:

string MyConnString = "Driver={Microsoft Access Driver (*.mdb)}; DBQ=c:/test/test.mdb;";
string strComm1 = "select * from UserList";
string strComm2 = "select * from BookList";

ADOConnection MyConnection = new ADOConnection(MyConnString);

ADODataSetCommand MyComm1 = new ADODataSetCommand(strComm1,MyConnection);
ADODataSetCommand MyComm2 = new ADODataSetCommand(strComm2,MyConnection);

這些都只是在作一些準備工作,打開一個聯結,并且打開兩個DataSetCommand取得兩個表的數據。

DataSet MyDataSet = new DataSet();

這是我們程序的關鍵之地,這里打開了我們要操作的DataSet對象。下面我們就需要將數據表的內容填入DataSet了。

MyComm1.FillDataSet(MyDataSet,"UserList");
MyComm2.FillDataSet(MyDataSet,"BookList");

這里是我們今天的主要內容。前面的幾章曾經說過,在一個DataSet中可以包含多種數據,這里我們是往這個名為MyDataSet的DataSet中存放了兩個數據庫表,其實只要愿意,我們還可以在里面插入XML數據,而且他們是不會出現沖突的。大家可以放心使用,呵呵。

再下面的代碼,就是把MyDataSet的數據傳送給DataGrid控件顯示。這里就不多說了。

這里我們只是簡單的說了一下DataSet能存放多個數據表的功能,大家看看好像沒有什么特別的。這里看起來確實好像沒有什么特別的功能,但是如果配上DataSet中的修改、添加、刪除功能,我們操作數據庫就變得很簡單。我們可以先將數據庫讀入DataSet,然后在DataSet中修改數據,如果改得覺得不滿意,我們還可以使用RejectChanges方法全面恢復,最后一并交給去數據庫去更新。

下一節,我們再來講解,如何使用DataSet來添加,修改,刪除數據。



相關文章

主站蜘蛛池模板: 亚洲va久久久噜噜噜久久天堂 | 日本特黄特色免费大片 | 真实国产乱子伦精品免费 | 日本黄又粗暴一进一出抽搐文 | 日韩一卡2卡3卡新区网站 | 天天操天天干天天射 | 亚洲人成网站在线观看播放 | 日本一区二区三区中文字幕视频 | 亚洲人成网站色7799在线播放 | 日韩中文字幕精品视频在线 | 天天干天天操天天碰 | 在线亚洲精品国产成人二区 | 亚洲福利二区 | 日韩欧美三区 | 天天爱天天做天天干 | 亚洲爱爱网站 | 性感美女视频免费网站午夜 | 无需付费免费mv网站 | 小屁孩cao大人免费网站 | 一区二区三区视频在线 | 亚洲福利二区 | 天天干天天狠 | 奇米在线影视一区二区三 | 亚洲伊人成人网 | 亚洲91视频 | 欧美影院久久 | 手机在线成人精品视频网 | 日本一道高清不卡免费 | 五月婷婷深爱 | 最新国产精品精品视频 | 天天操天天弄 | 欧美亚洲性色影视在线 | 最近的2019中文字幕免费一页 | 日韩美在线 | 日本成年人免费看 | 色噜噜狠狠狠狠色综合久 | 在线免费观看日本 | 欧美性视屏 | 青青成人福利国产在线视频 | 四虎影院永久在线观看 | 中文字幕高清有码在线中字 |