国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

親密接觸ASP.Net(9)

2024-07-10 12:55:25
字體:
來源:轉載
供稿:網友
我們繼續(xù)前面的內容,呵呵,這次主要是講dataset的強大功能啦:)。上次吹了大家的
泡泡(說話不算數的意思,湖南人都能聽懂吧:)),這次一定不能再食言了:)

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

我們在asp中很多人習慣于使用recordset對象來操作數據庫,但是recordset有一個的缺
點就是一個recordset只能儲存一個數據表,當我們需要操作多個表時,不得不在多個re
cordset中來回操作,雖然這些在使用習慣后也沒有什么,但是對一個新手來說,這也是
一個很麻煩人的事情。光是那些變量名就可以搞渾你,現(xiàn)在好了,在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)
{
//聯(lián)結語句
string myconnstring = "driver={microsoft access driver (*.mdb)};
dbq=c:/test/test.mdb;";
string strcomm1 = "select * from userlist";
string strcomm2 = "select * from booklist";

//打開一個聯(lián)結
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

我們現(xiàn)在來分析一下代碼:

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);

這些都只是在作一些準備工作,打開一個聯(lián)結,并且打開兩個datasetcommand取得兩個
表的數據。

dataset mydataset = new dataset();

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

mycomm1.filldataset(mydataset,"userlist");
mycomm2.filldataset(mydataset,"booklist");

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


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

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

下一節(jié),我們再來講解,如何使用dataset來添加,修改,刪除數據。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 青河县| 南乐县| 汉阴县| 丹凤县| 固镇县| 泰顺县| 庆城县| 东乌珠穆沁旗| 临桂县| 壤塘县| 西林县| 化隆| 循化| 平武县| 黄山市| 图片| 长兴县| 吴川市| 紫阳县| 井冈山市| 尖扎县| 耿马| 大埔区| 嘉义县| 新乐市| 博客| 陇南市| 梁河县| 永嘉县| 察雅县| 东丰县| 龙胜| 百色市| 武山县| 喀喇| 泾源县| 湘西| 大竹县| 普安县| 英德市| 中方县|