91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ADO.NET如何使用DataAdapter類

發布時間:2021-11-03 15:18:46 來源:億速云 閱讀:154 作者:小新 欄目:編程語言

這篇文章主要介紹ADO.NET如何使用DataAdapter類,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

ADO.NET使用還是比較常用的,于是我研究了一下ADO.NET,在這里拿出來和大家分享一下,希望對大家有用。說說關于ADO.NET使用DBCommand這個類,所有對數據庫的操作都是通過它進行完成的。如果把DBConnection比作通路的話,那么DBCommand就是在這條通路上來回跑動的車輛。缺少了它,在程序中所有對數據庫的操作無法傳遞給數據庫服務器端。因此可以說,DBConnection和DBCommand組成ADO.NET的基礎。在對DBCommand對象進行操作的時候,需要注意如下幾點。

設置CommandText和CommandType屬性,一般情況下是不需要設置CommandType屬性,但是如果執行存儲過程,則需要設置CommandType屬性為StoredProcedure。建議多使用參數,而減少字符串的拼接,這樣一是可以減少程序書寫錯誤,而可以避免語句蛀蟲。參數的使用可以如下:

SqlCommand myComm = new SqlCommand();  myComm.CommandText = “SELECT * FROM UserInfo WHERE UserName = @UserName ”;  myComm.Parameters.Add( “@UserName”, yourValue );

區分ExecuteNonQuery方法和ExecuteReader方法,前者是主要是處理非查詢類型的語句,返回的個數是受影響的個數,但其對“INSERT”語句是不起任何作用的;而后者主要是處理查詢語句,但是需要借助DataReader來輔助操作。***不要忘了在用完后,調用Dispose方法對DBCommand對象進行釋放。而要想獲得查詢的記錄集,僅僅靠DBCommand是無法完成的,因此要借助DataReader來獲得所查詢的記錄。例如:

SqlCommand myComm = new SqlCommand();  myComm.CommandText = “SELECT * FROM UserInfo WHERE UserName = @UserName ”;  myComm.Parameters.Add( “@UserName”, yourValue );  SqlDataReader myReader = myComm.ExecuteReader();  while( myReader.Read() )  {  myReader.GetValue( index );// Get value through specific index  }  myReader.Close();  myComm.Dispose();

所以在DataReader中比較常見的兩個方法,就是Read和GetValue,前者是判斷是否讀出記錄,后者是獲得記錄中某個字段的值,其返回是object類型對象,需要進行類型轉換才能得到想要得字段值。可惜的是,DataReader每次只能讀出一行記錄,因此在使用它的時候,查詢結果要逐行讀取,其間它對DBConnection是獨享,即不能在此時刻用同一個DBConnection去做其它的數據庫操作。

要提的一點是,在ADO.NET中提供了一個更好的、更方便的數據操作工具,即DataAdapter類。對于一個DataAdapter對象,可以設置四個DBCommand,分別是SelectCommand、InsertCommand、DeleteCommand、UpdateCommand。而這四個DBCommand并不需要全部初始化,主要是看程序的具體要求,如果只是用到查詢方面,那么只需要設定一下SelectCommand即可,這和一般的DBCommand操作一樣

對于DataAdapter操作返回的記錄集,需要用DataSet來進行輔助操作,例如:

獲得查詢的記錄集

DataAdapter.Fill( DataSet, “yourTableName” );// “yourTableName” is the name using in data set

更新數據庫

DataAdapter.Update( DataSet, “yourTableName” );

此處要注意的是:首先DataSet要發生變化,如果和Fill之后一樣,對數據庫則沒什么影響;再者要設置InsertCommand、DeleteCommand、UpdateCommand,如果不設置對應操作語句,則一樣對數據庫沒任何影響。相對而言,DataAdapter效率要差一些,但是避免了一些操作,讀取記錄集,對獲得記錄數據進行類型轉換等等。同時其對DBConnection的占有只是在對數據庫操作的時候,操作完即立刻釋放。因此,強烈建議多ADO.NET使用DataAdapter,而少ADO.NET使用DataReader。在文章的結尾,要說明的,以上所提到的只是數據庫操作的虛類名,如果程序真正操作數據庫,則要根據數據庫的不同,選擇不同子類來建立對象。

以上是“ADO.NET如何使用DataAdapter類”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

密山市| 太原市| 吕梁市| 临朐县| 石狮市| 上饶县| 辽宁省| 平遥县| 四川省| 垦利县| 成安县| 海南省| 离岛区| 增城市| 台北市| 嘉荫县| 枣庄市| 平南县| 镇巴县| 方正县| 富锦市| 莱阳市| 鹰潭市| 柘城县| 津市市| 即墨市| 丰县| 乌拉特前旗| 舟曲县| 南皮县| 安西县| 察隅县| 大新县| 巢湖市| 玉田县| 玛曲县| 滕州市| 布尔津县| 彭阳县| 宜城市| 交口县|