自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

C#操作Access數(shù)據(jù)庫之SELECT操作淺析

開發(fā) 后端
C#操作Access數(shù)據(jù)庫之SELECT操作是如何的呢?C#操作Access數(shù)據(jù)庫之SELECT操作需要注意的是什么呢?本文向你介紹這方面的內(nèi)容。

C#操作Access數(shù)據(jù)庫之SELECT操作是如何的呢,讓我們開始講解:

下面是我的自己在寫測(cè)試程序的時(shí)候用到了,先列出來看看OleDbDataReader和OleDbDataAdapter是如何操作從數(shù)據(jù)庫中選擇記錄的:

  1. //通過ID得到當(dāng)前留言詳細(xì)內(nèi)容.通過STRING類型參數(shù)  
  2.  
  3. public Notebook getNoteFromID(string noteid)  
  4. {   
  5. Notebook tempnote=new Notebook(); //定義返回值  
  6.  
  7. try //C#操作Access數(shù)據(jù)庫之SELECT操作
  8. {  
  9. OleDbConnection conn = getConn();  
  10.  //getConn():得到連接對(duì)象  
  11. string strCom = "Select * from notes where id=" + noteid ;  
  12. OleDbCommand myCommand =new OleDbCommand(strCom,conn);  
  13. conn.Open();  
  14. OleDbDataReader reader;   
  15. reader =myCommand.ExecuteReader() ;   
  16. //執(zhí)行command并得到相應(yīng)的DataReader  
  17. //下面把得到的值賦給tempnote對(duì)象  
  18. if(reader.Read())  
  19. {  //C#操作Access數(shù)據(jù)庫之SELECT操作
  20. tempnote.id=(int)reader["id"];  
  21. tempnote.title=reader["title"].ToString();  
  22. tempnote.content=reader["content"].ToString();  
  23. tempnote.author=reader["author"].ToString();  
  24. tempnote.email=reader["email"].ToString();  
  25. tempnote.http=reader["http"].ToString();  
  26. tempnote.pic=reader["pic"].ToString();  
  27. tempnote.hits=(int)reader["hits"];  
  28. tempnote.posttime=(DateTime)reader["posttime"];  
  29. }  
  30. else //如沒有該記錄,則拋出一個(gè)錯(cuò)誤!  
  31. {  
  32. throw(new Exception("當(dāng)前沒有該記錄!"));  
  33. }  
  34.  
  35. reader.Close();  
  36. conn.Close();  
  37. }  
  38. catch(Exception e)  
  39. {  
  40. //throw(new Exception("數(shù)據(jù)庫出錯(cuò):" + e.Message)) ;  
  41. }  
  42. return(tempnote); //返回Databook對(duì)象  
  43. } //C#操作Access數(shù)據(jù)庫之SELECT操作

上面的程序就是通過OleDbDataReader來得到特定的記錄的!其中用到的語句我單獨(dú)寫到下面:

  1. OleDbConnection conn = getConn();  
  2.  //getConn():得到連接對(duì)象  
  3. string strCom = "Select * from notes where id=" + noteid ;   
  4. //SQL語句  
  5. OleDbCommand myCommand =new OleDbCommand(strCom,conn);  
  6.  //建立OleDbCommand對(duì)象  
  7. conn.Open(); //注意我在前面說的Open語句在這里使用到了!  
  8. OleDbDataReader reader;   
  9. reader =myCommand.ExecuteReader() ;  
  10.  //執(zhí)行command并得到相應(yīng)的結(jié)果 

我在每句話后都加入了說明,其中OleDbConnection conn = getConn();就是通過我前面提到的getConn函數(shù)來得到數(shù)據(jù)庫連接的,其他語句沒有什么好說的,都很簡單,就不多說了!

C#操作Access數(shù)據(jù)庫之SELECT操作:再列一個(gè)通過OleDbDataAdapter來得到記錄的例程:

  1. //Getlist():得到當(dāng)前需要的留言列表  
  2. public DataView getNoteList()  
  3. {   
  4. DataView dataview;  
  5. System.Data.DataSet mydataset; //定義DataSet  
  6.  
  7. try 
  8. {   
  9. OleDbConnection conn = getConn(); //getConn():得到連接對(duì)象  
  10. OleDbDataAdapter adapter = new OleDbDataAdapter();  
  11. string sqlstr="select * from notes order by posttime desc";  
  12. mydataset= new System.Data.DataSet();  
  13. adapter.SelectCommand = new OleDbCommand(sqlstr, conn);  
  14. adapter.Fill(mydataset,"notes");   
  15. conn.Close();  
  16. }  //C#操作Access數(shù)據(jù)庫之SELECT操作
  17. catch(Exception e)  
  18. {  
  19. throw(new Exception("數(shù)據(jù)庫出錯(cuò):" + e.Message)) ;  
  20. }   
  21. dataview = new DataView(mydataset.Tables["notes"]);  
  22. return(dataview);   

這個(gè)程序或許有些復(fù)雜,同樣的,我還是先把那些關(guān)鍵語句列出,并說明:

  1. OleDbConnection conn = getConn();   
  2. //通過函數(shù)getConn()得到連接對(duì)象  
  3. OleDbDataAdapter adapter = new OleDbDataAdapter();   
  4. //實(shí)例化OleDbDataAdapter對(duì)象  
  5. string sqlstr="select * from notes order by posttime desc";   
  6. //SQL語句  
  7.  //C#操作Access數(shù)據(jù)庫之SELECT操作
  8. mydataset= new System.Data.DataSet();   
  9. //由于OleDbDataAdapter需要和DataSet結(jié)合使用,所以在這里定義了DataSet對(duì)象,  
  10. //其實(shí)說OleDbDataAdapter復(fù)雜,  
  11. //其實(shí)就是因?yàn)镈ataSet的緣故DataSet有些類似于ADO中的recordset 對(duì)象,  
  12. //但功能遠(yuǎn)遠(yuǎn)超過了它,而且它和數(shù)據(jù)庫是斷開的,并能存放多個(gè)記錄集!  
  13.  
  14. adapter.SelectCommand = new OleDbCommand(sqlstr, conn);   
  15. //設(shè)置命令為SelectCommand類型的  
  16.  
  17. adapter.Fill(mydataset,"notes");  
  18.  
  19.  //執(zhí)行,并將結(jié)果添加到mydataset中的”notes”表中  
  20. conn.Close(); //關(guān)閉連接! 

在對(duì)上面的程序加一些補(bǔ)充說明,由于getNoteLista是得到一系列記錄,并通過控件DataGrid來做分頁顯示的,所以我返回的是一個(gè)DataView類型的對(duì)象!

C#操作Access數(shù)據(jù)庫之SELECT操作的基本內(nèi)容就向你介紹到這里,希望對(duì)你了解和學(xué)習(xí)C#操作Access數(shù)據(jù)庫之SELECT操作有所幫助。

【編輯推薦】

  1. C#操作Access之讀取mdb淺析
  2. C#操作Access之按列讀取mdb淺析
  3. C#操作Access實(shí)例解析
  4. C#操作Access數(shù)據(jù)庫的基礎(chǔ)知識(shí)淺析
  5. C#操作Access數(shù)據(jù)庫實(shí)例淺析
責(zé)任編輯:仲衡 來源: 博客園
相關(guān)推薦

2009-08-19 16:30:55

C#操作Access數(shù)

2009-08-19 15:13:48

C#操作Access

2024-04-18 09:56:16

2009-08-19 15:55:42

C#操作Access

2009-08-19 15:47:09

C#操作Access

2009-08-19 16:19:01

C#操作Access數(shù)

2009-08-19 16:01:24

C#操作Access

2009-08-18 16:20:09

C# 操作Excel

2009-08-18 16:14:05

C# 操作Excel

2009-08-20 10:25:37

C#操作內(nèi)存

2009-08-19 13:34:55

C#操作注冊(cè)表

2009-08-19 13:30:58

C#操作注冊(cè)表

2009-08-19 13:25:53

C#操作注冊(cè)表

2009-08-18 16:42:49

C# 操作XML

2009-08-18 14:25:05

C# 操作Excel

2009-08-17 13:34:02

C#異步操作

2009-08-19 17:20:22

C# 操作符

2009-08-17 17:42:57

C#數(shù)據(jù)庫操作類

2009-08-19 16:09:15

C#操作Access

2009-08-18 16:30:41

C# 操作XML
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)