人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當(dāng)前位置:蘿卜系統(tǒng)下載站 > 技術(shù)開(kāi)發(fā)教程 > 詳細(xì)頁(yè)面

第二局部,BETA2設(shè)置ACCESS數(shù)據(jù)庫(kù)

第二局部,BETA2設(shè)置ACCESS數(shù)據(jù)庫(kù)

更新時(shí)間:2022-07-09 文章作者:未知 信息來(lái)源:網(wǎng)絡(luò) 閱讀次數(shù):

朋友們好,總算又有時(shí)間了,搞了兩天,頭都大了!不過(guò),真的是,。NET的東西太多了,簡(jiǎn)直有一種眼花繚亂的感覺(jué),看來(lái)還是需要靜下心來(lái)慢慢測(cè)試!我的學(xué)習(xí)觀點(diǎn)就是多寫(xiě)程序,多練習(xí),你可以不去記憶那些在資料或幫助上能查到的東西,(我就沒(méi)有去記,即使是名字空間如何寫(xiě)我都是看幫助),但一定要理解了,而如何理解,最直接的方法就是通過(guò)程序來(lái)把那些東西直接展示在眼前!

好了,不多說(shuō)了,接著上次的東西,我們繼續(xù)來(lái)看看,如何在。NET中操作數(shù)據(jù)庫(kù)(數(shù)據(jù)庫(kù)采用ACCESS 2000,至于SQL,我在以后有機(jī)會(huì)了在說(shuō)吧,其實(shí)如果懂了,ACCESS的話,適當(dāng)變變就可以操作SQL數(shù)據(jù)庫(kù)了!)

上次說(shuō)了如何在ADO。NET中執(zhí)行“SELECT”語(yǔ)句,這次我們看看,如何執(zhí)行“DELETE、UPDATE、INSERT”等語(yǔ)句。

我們這次同樣通過(guò)例子來(lái)看,其中我們用到了System.Data.OleDb.OleDbCommand類,其實(shí),我們?cè)谇懊鎴?zhí)行SELECT的時(shí)候也用到了!

下面我寫(xiě)出我的程序:

//修改留言本中特定的數(shù)據(jù)
public Boolean UpdateNote(Notebook note)
{
Boolean tempvalue=false;
 string sqlstr="";//當(dāng)時(shí)在這里定義,是為了在出現(xiàn)異常的時(shí)候看看我的SQL語(yǔ)句是否正確
 try
{
//用到了我前面寫(xiě)的那個(gè)得到數(shù)據(jù)庫(kù)連接的函數(shù)
OleDbConnection conn = getConn(); //getConn():得到連接對(duì)象,
conn.Open();
 
//確定我們需要執(zhí)行的SQL語(yǔ)句,本處是UPDATE語(yǔ)句!
sqlstr = "UPDATE notes SET ";
sqlstr += "title='" + note.title + "',";
sqlstr += "content='" + DealString(note.content) +"',";
sqlstr += "author='" + note.author + "',";
sqlstr += "email='" +note.email +"',";
sqlstr += "http='" +note.http +"'";
//sqlstr += "pic='" +note.pic +"'";
sqlstr += " where id=" + note.id;
 
//定義command對(duì)象,并執(zhí)行相應(yīng)的SQL語(yǔ)句
OleDbCommand myCommand = new OleDbCommand(sqlstr,conn);
 myCommand.ExecuteNonQuery(); //執(zhí)行SELECT的時(shí)候我們是用的ExecuteReader()
 conn.Close();
 

//假如執(zhí)行成功,則,返回TRUE,否則,返回FALSE
 tempvalue=true;
 return(tempvalue);
}
 catch(Exception e)
 {
 throw(new Exception("數(shù)據(jù)庫(kù)更新出錯(cuò):" +sqlstr + "\r" + e.Message)) ;
 }
}

這個(gè)例子是對(duì)于特定ID好的記錄進(jìn)行UPDATE操作,具體解釋我都寫(xiě)在了程序中,其中的與數(shù)據(jù)庫(kù)有關(guān)的語(yǔ)句是try內(nèi)部的那些!

其實(shí),我們同樣可以通過(guò)上面的那種模式執(zhí)行INSERT、DELETE操作,下面我把我的程序列到下面!

/*刪除特定記錄,通過(guò)string類型的ID刪除字段,在我的程序中,我把這個(gè)函數(shù)重載了,這樣我們就可以通過(guò)INT類型的ID參數(shù)來(lái)刪除特定的字段了*/
public Boolean DelNote(string delid)
{
Boolean tempvalue=false;
string sqlstr="";
//連接數(shù)據(jù)庫(kù)
try
{
OleDbConnection conn = getConn(); //getConn():得到連接對(duì)象
conn.Open();

sqlstr = "delete * from notes where id=" + delid;

//定義command對(duì)象,并執(zhí)行相應(yīng)的SQL語(yǔ)句
OleDbCommand myCommand = new OleDbCommand(sqlstr,conn);
myCommand.ExecuteNonQuery();
conn.Close();
 

//假如執(zhí)行成功,則,返回TRUE,否則,返回FALSE
 tempvalue=true;
 return(tempvalue);
}
catch(Exception e)
{
throw(new Exception("數(shù)據(jù)庫(kù)更新出錯(cuò):" +sqlstr + "\r" + e.Message)) ;
}
}

細(xì)心的朋友們應(yīng)該能看到,其實(shí)這個(gè)程序和上面的相比,只是哪個(gè)SQL語(yǔ)句不同而已,其他的都基本一樣的!同樣的,我們想在數(shù)據(jù)庫(kù)中插入新的記錄的時(shí)候也可以用這樣的方式,程序如下:
//向留言本中添加數(shù)據(jù)
public Boolean AddNote(Notebook note)
{

Boolean tempvalue=false;//定義返回值,并設(shè)置初值
//下面把note中的數(shù)據(jù)添加到數(shù)據(jù)庫(kù)中!
try{

OleDbConnection conn = getConn(); //getConn():得到連接對(duì)象
conn.Open();

//設(shè)置SQL語(yǔ)句
string insertstr="INSERT INTO notes(title, content, author, email, http, pic ,hits,posttime) VALUES ('";
insertstr +=note.title +"', '";
insertstr +=DealString(note.content) + "','";
insertstr +=note.author + "','";
insertstr +=note.email + "','";
insertstr +=note.http + "','";
insertstr +=note.pic + "',";
insertstr +=note.hits + ",'";
insertstr +=note.posttime +"')";

OleDbCommand insertcmd = new OleDbCommand(insertstr,conn) ;
insertcmd.ExecuteNonQuery() ;

conn.Close();
tempvalue=true;
}
catch(Exception e)
{
throw(new Exception("數(shù)據(jù)庫(kù)出錯(cuò):" + e.Message)) ;
}
return(tempvalue);
}

//處理數(shù)據(jù),在把數(shù)據(jù)存到數(shù)據(jù)庫(kù)前,先屏蔽那些危險(xiǎn)字符!
public string DealString(string str)

str=str.Replace("<","<");
str=str.Replace(">",">");
str=str.Replace("\r","<br>");
str=str.Replace("\'","’");
str=str.Replace("\x0020"," ");
 
return(str);
}

//恢復(fù)數(shù)據(jù):把數(shù)據(jù)庫(kù)中的數(shù)據(jù),還原成未處理前的樣子
public string UnDealString(string str)

str=str.Replace("<","<");
str=str.Replace(">",">");
str=str.Replace("<br>","\r");
str=str.Replace("’","\'");
str=str.Replace(" ","\x0020");

return(str);
}

我同時(shí)列出了兩個(gè)函數(shù)UnDealString()和DealString( ),他們是對(duì)與輸入內(nèi)容做一些事先的處理和還原工作的!

這幾個(gè)程序因?yàn)槎急容^簡(jiǎn)單,所以我就不多說(shuō)了!
其實(shí),我這樣的對(duì)數(shù)據(jù)庫(kù)操作也只是ADO。NET中的一部分,而通過(guò)DataSet來(lái)操作我現(xiàn)在還沒(méi)有仔細(xì)研究過(guò),所以我也不能寫(xiě)出什么東西來(lái),以后的這幾天我就準(zhǔn)備好好看看那個(gè)東西了,到時(shí)候,我還會(huì)把我的感受寫(xiě)出來(lái)和大家分享!

在補(bǔ)充一下,我前面用到的程序都是我在寫(xiě)一個(gè)留言本的測(cè)試程序時(shí)候用到的!如果有朋友有興趣的話,我將貼出我的全部學(xué)習(xí)代碼!

好了,我要開(kāi)始我的事情了!下次再見(jiàn)!

溫馨提示:喜歡本站的話,請(qǐng)收藏一下本站!

本類教程下載

系統(tǒng)下載排行

網(wǎng)站地圖xml | 網(wǎng)站地圖html
主站蜘蛛池模板: 常山县| 南投市| 永吉县| 平陆县| 海林市| 建德市| 抚松县| 开远市| 大同县| 新巴尔虎左旗| 广宁县| 平湖市| 吴桥县| 隆德县| 陆川县| 涞水县| 上犹县| 江安县| 榆树市| 松阳县| 邛崃市| 桂东县| 建水县| 宕昌县| 富裕县| 崇州市| 阆中市| 叶城县| 三原县| 霸州市| 浪卡子县| 栾城县| 塔城市| 香河县| 资阳市| 岫岩| 巴南区| 普宁市| 遂昌县| 炉霍县| 六安市|