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

明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

增加更改刪除一個(gè)數(shù)據(jù)

[摘要]首先我們需要打開(kāi)一個(gè)聯(lián)結(jié):string MyConnString = "Driver=Microsoft Access Driver (*.mdb); DBQ=c:/test/test.mdb;";string strComm = "select * from Use...

首先我們需要打開(kāi)一個(gè)聯(lián)結(jié):
string MyConnString = "Driver={Microsoft Access Driver (*.mdb)}; DBQ=c:/test/test.mdb;";
string strComm = "select * from UserList";
ADOConnection MyConnection = new ADOConnection(MyConnString);
ADODataSetCommand MyComm = new ADODataSetCommand(strComm,MyConnection);



這里我們?yōu)榱酥v解方便,只在DataSet存入一個(gè)表的內(nèi)容:
DataSet MyDataSet = new DataSet();
MyComm.FillDataSet(MyDataSet,"UserList");

此時(shí)我們就獲得了一個(gè)擁有UserList表數(shù)據(jù)的DataSet。在講解DataSet之前,我們還需要了解DataSet的結(jié)構(gòu)下面是DataSet的結(jié)構(gòu)樹(shù)
DataSet 
RelationsCollection 
ExtendedProperties 
TablesCollection  
DataTables 
 
Rows 
Columns 
其它 
由于我們研究的是DataTable,其它的我們暫時(shí)不管他們。一個(gè)DataSet中包含多個(gè)DataTable,一個(gè)DataTable又包含有多個(gè)Row,這就是我們操作DataSet的基礎(chǔ)啦:)



添加數(shù)據(jù)



添加一數(shù)據(jù),從上面的列表中我們可以看出,其實(shí)就是添加一行Row,這里我們也來(lái)演示一下如何添加一行數(shù)據(jù),我們程序一切以DataSet為頂點(diǎn),呵呵,如果TablesCollection,RowsCollection下去的話,還有一些煩人的dt.AcceptChanges這些方法的調(diào)用,很煩人,還是一次搞定吧。



DataRow dr=MyDataSet.Tables["UserList"].NewRow();
dr["UserName"] = "周訊";
dr["ReMark"] = "100";
dr["Comment"] = "漂亮MM";
MyDataSet.Tables.Rows.Add(dr);



第一行,我們建立一個(gè)新的數(shù)據(jù)行,它用來(lái)儲(chǔ)存我們新加入的數(shù)據(jù)。然后我們?cè)谶@個(gè)數(shù)據(jù)行中加入我們需要的數(shù)據(jù)。dr["UserName"]表明是對(duì)UserName字段進(jìn)行添加,你可以使用dr[1]來(lái)添加信息,但是這需要我們事先知道字段在數(shù)據(jù)表的位置,而且在不知道數(shù)據(jù)表結(jié)構(gòu)的情況很難知道我們添加的數(shù)據(jù)的對(duì)應(yīng)情況,所以還是用字段名為好。
       最后我們使用RowsCollection的Add方法,將我們新建這一行加入到數(shù)據(jù)表中。
修改數(shù)據(jù)
知道如何添加數(shù)據(jù)后,修改數(shù)據(jù)也是很簡(jiǎn)單的事情了.
MyDataSet.Tables["UserList"].Rows[0]["UserName"]="飛刀大哥";
這樣我們就修改了第一行數(shù)據(jù)中的UserName字段。



刪除數(shù)據(jù)



刪除數(shù)據(jù),主要是使用RowsCollection提供的Delete方法,看下面的程序也是很簡(jiǎn)單的事情啦:)
MyDataSet.Tables["UserList"],Rows[0].Delete();
這一行數(shù)據(jù)就已經(jīng)被刪除了。
恢復(fù)數(shù)據(jù)
有時(shí)候我們添加/修改數(shù)據(jù)會(huì)出現(xiàn)錯(cuò)誤,這時(shí)候,就需要恢復(fù)原來(lái)的數(shù)據(jù)。下面的程序,顯示如何判斷是否有錯(cuò)誤發(fā)生:
if(MyDataSet.HasErrors)
{
MyDataSet.RejectChanges();
}

首先我們檢查DataSet中是否有錯(cuò)誤發(fā)生,如果有就使用RejectChanges()方法,恢復(fù)DataSet中的數(shù)據(jù)。注意這里恢復(fù)是在DataSet中所有表以及表中DataRow中的數(shù)據(jù),也就是在此交次操作的數(shù)據(jù)全部恢復(fù)。如果我們只需要恢復(fù)部分內(nèi)容,我們可以使用DataTable或DataRow的RejectChanges(),這里就不詳細(xì)講解了,使用方法和DataSet一樣,只是操作的對(duì)像不同而已。



探測(cè)DataSet是否有改動(dòng)



我們?cè)趯ataSet送交給數(shù)據(jù)庫(kù)去保存去,我們需要看看這個(gè)DataSet是否已經(jīng)被改動(dòng)了。如果沒(méi)有改動(dòng),我們也就沒(méi)有必要去修改數(shù)據(jù)庫(kù)了。



if(MyDataSet.HasChanges)
{
    //保存
}else{
    //不進(jìn)行任何操作
}



更新數(shù)據(jù)庫(kù)



我們上面的操作,都只是針對(duì)DataSet的,沒(méi)有操作數(shù)據(jù)庫(kù),但是我們的目的還是要將數(shù)據(jù)保存到數(shù)據(jù)中去,所以我們這里就需要調(diào)用DataSetCommand的Update方法。下面的程序顯示如何將DataSet的數(shù)據(jù)交給數(shù)據(jù)庫(kù)。MyComm.Update(MyDataSet);
很簡(jiǎn)單的一句,呵呵。這里要注意,如果一個(gè)DataSet中包含有多個(gè)表,而我們只更新一個(gè),那我們就必須寫(xiě)明更新的數(shù)據(jù)表名:
MyComm.Update(MyDataSet,"UserList");
當(dāng)Update方法被調(diào)用后,DataSetCommand會(huì)將數(shù)據(jù)庫(kù)中的數(shù)據(jù)與DataSet中的數(shù)據(jù)相比較,對(duì)不相同的地方進(jìn)行更新。



主站蜘蛛池模板: 欧美一级视屏 | 小明永久2015www永久免费观看 | 四色婷婷婷婷色婷婷开心网 | 日韩黄色一级 | 亚洲午夜综合网 | 青娱乐在线视频播放 | 欧美怡红院免费全部视频 | 欧美午夜一区二区福利视频 | 中文字幕在线精品不卡 | 欧洲乱码专区一区二区三区四区 | 深夜视频在线播放视频在线观看免费观看 | 青草社区视频 | 日韩一级大片 | 日韩综合一区 | 日韩性插| 日本亚洲欧洲高清有码在线播放 | 欧洲日韩视频二区在线 | 日韩三级免费观看 | 青草视频免费 | 天天拍夜夜添久久精品免费 | 天天干天天做天天操 | 最新韩国伦理片大全手机在线播放 | 天天天天天天天操 | 日韩亚洲制服丝袜中文字幕 | 婷婷国产| 天天操天天干天天操 | 午夜激情一区 | 五级床片全部免费播放 | 日本中文字幕在线看 | 五月激情丁香婷婷综合第九 | 欧美一级高清片 | 日比免费视频 | 欧美亚洲天堂 | 最近新的免费韩国视频 | 天天噜夜夜操 | 日本福利片在线观看 | 伊人五月婷婷 | 亚洲婷婷综合中文字幕第一页 | 青草青在线| 欧美在线xx | 网站在线观看高清免费 |