描述ADODataReader類
現(xiàn)在一切都變得有趣起來.讀數(shù)據(jù)可以通過ADODataReader類來實現(xiàn).(參看Chris Maunder的文章"ADO.NET ADODataReader類"來獲取關于這個類的更多信息.)讀數(shù)據(jù)的步驟如下:
1.我們用ADOConnection來打開一個數(shù)據(jù)庫.
- ADOConnection conn =
- new ADOConnection(DB_CONN_STRING);
- conn.Open();
2.我們編寫一個SQL語句來定義將要取出的數(shù)據(jù).這個數(shù)據(jù)執(zhí)行的結果是返回一個ADODataReader類 對象.注意Execute方法中的out關鍵字.這在C#中意味著通過引用傳遞參數(shù).
- ADODataReader dr;
- ADOCommand cmd =
- new ADOCommand( "SELECT * FROM Person", conn );
- cmd.Execute( out dr);
3.我們循環(huán)遍歷ADODataReader類中的每一個記錄直到我們完成要做的工作.注意:數(shù)據(jù)被直接作為一個字符串返回同時數(shù)據(jù)域名稱用來指明讀的數(shù)據(jù)域.
- while( dr.Read() )
- {
- System.Console.WriteLine( dr["FirstName"] );
- }
4.我們收工
但是,作為好的程序員我們還需要加進許多try/catch/finally語句來確保我們處理了所有的錯誤
- try
- {
- .... 數(shù)據(jù)庫操作 ...
- }
- catch( Exception ex )
- {
- System.Console.WriteLine( "READING:" );
- System.Console.WriteLine( " ERROR:" + ex.Message );
- System.Console.WriteLine( " SQL :" + sSqlCmd );
- System.Console.WriteLine( " Conn.:" + DB_CONN_STRING );
- }
- finally
- {
- // 關閉連接
- if( conn.State == DBObjectState.Open )
- conn.Close();
- }
【編輯推薦】