日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

SqlDataAdapter的使用注意事项

發布時間:2025/3/14 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SqlDataAdapter的使用注意事项 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

轉自:http://tankywang.iteye.com/blog/1195910?(向原作者致敬)


如果使用SqlDataAdapter來查詢數據返回給DataSet或者DataTable時需要注意以下幾點:

1、如果SqlDataAdapterSelectCommand的連接并沒有打開,使用SqlDataAdapterFill方法時會自動打開數據庫連接,并在方法執行完畢自動關閉連接。如果連接在使用Fill方法之前已經打開,方法執行結束后會保持連接的現有狀態,不會關閉連接。

2、如果你在同一個Connection上有一系列的連續操作,例如執行多個Fill操作,你應該在最開始使用ConnectionOpen()方法打開連接,避免使用Fill方法時執行額外的打開連接/關閉連接操作,從而提高了程序的性能。

3、在使用SqlDataAdapter中的SqlCommand對象時,你可以重復的使用同一個SqlCommand去多次執行相同類型的操作,比如說執行多次查詢,但是不要使用同一個SqlCommand去執行不同類型的操作。?

4、當SqlDataReader沒有關閉之前,數據庫連接會一直保持open狀態,所以在使用SqlDataReader時,使用完畢應該馬上調用SqlDataReader.Close()關閉它。

5、一個連接只能被一個SqlDataReader使用,這也是為什么要盡早關閉SqlDataReader的原因。

6、使用完SqlDataReader后,你可以在程序中顯示的調用數據庫連接對象的Close方法關閉連接,也可以在調用Command對象的 ExecuteReader方法時傳遞CommandBehavior.CloseConnection這個枚舉變量,這樣在調用SqlDataReaderClose方法時會自動關閉數據庫連接。

7、使用SqlDataReader時盡量使用和數據庫字段類型匹配的方法來取得相應的值,比如對于整形的字段使用GetInt32,對字符類型的字段使用GetString。這樣會減少因為類型不一致而額外增加的類型轉換操作。

8、使用SqlDataReader獲取多條記錄時,如果沒有訪問到取出記錄的末尾時想要關閉SqlDataReader,應該先調用Command對象的 Cancel方法,然后再調用SqlDataReaderClose方法。Command對象的Cancel方法使得數據庫不再把 SqlDataReader中未訪問的數據發送到調用端,如果不調用此方法直接關閉SqlDataReader,數據庫會發送和 SqlDataReader未訪問數據等長的空數據流到調用端。

9、如果想通過SqlCommandExecuteReader方法獲取存儲過程的返回值或者輸出參數,必須先調用SqlDataReaderClose方法后,才能獲取輸出參數的值或者返回值。

10、如果使用SqlDataReader只返回一條記錄,那么在調用CommandExecuteReader方法時,指定CommandBehavior.SingleRow參數,這個參數的是否使用對SQL Server .NET DataProvider沒有什么影響,但是當你使用OLE DB .NET Data Provider時,指定這個參數后,DataPrivider內部將使用IRow接口,而不是使用相對來說耗費資源的IRowSet接口。

轉載于:https://www.cnblogs.com/java20130722/p/3207068.html

總結

以上是生活随笔為你收集整理的SqlDataAdapter的使用注意事项的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。