日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網營銷解決方案
具體使用ADO.NET操作相關技巧

 ADO.NET操作都可能產生一個或多個提供者錯誤。隨著每個錯誤的發(fā)生這是因為現(xiàn)在數(shù)據(jù)是順序返回的,并且DataReader一旦讀過該數(shù)據(jù),該數(shù)據(jù)就不再可用。下面進行學習研究。

成都網站建設哪家好,找創(chuàng)新互聯(lián)公司!專注于網頁設計、成都網站建設、微信開發(fā)、微信小程序開發(fā)、集團企業(yè)網站建設等服務項目。核心團隊均擁有互聯(lián)網行業(yè)多年經驗,服務眾多知名企業(yè)客戶;涵蓋的客戶類型包括:LED顯示屏等眾多領域,積累了大量豐富的經驗,同時也獲得了客戶的一致贊美!

使用CommandBuilder的***實踐

假設SelectCommand執(zhí)行單一表SELECT,CommandBuilder就會以DataAdapter的SelectCommand屬性為基礎自動生成DataAdapter的InsertCommand、UpdateCommand、和DeleteCommand屬性。下面是為獲得***性能而使用CommandBuilder的一些技巧。

1) CommandBuilder的使 ADO.NET操作用應該限制在設計時或即席方案中。生成DataAdapter命令屬性所必需的處理會影響性能。如果預先知道INSERT/UPDATE/DELETE語句的內容,就顯式設置它們。一個比較好的設計技巧是,為INSERT/UPDATE/DELETE命令創(chuàng)建存儲過程并顯式配置DataAdapter命令屬性以使用它們。

2) CommandBuilder使用DataAdapter的SelectCommand屬性確定其他命令屬性的值。如果DataAdapter的SelectCommand本身曾經更改過,確保調用RefreshSchema以更新命令屬性。

3) 如果DataAdapter命令屬性為空(命令屬性默認情況下為空),CommandBuilder僅僅為它生成一條命令。如果顯式設置了命令屬性,CommandBuilder不會重寫它。如果希望CommandBuilder為以前已經設置過 ADO.NET操作的命令屬性生成命令,就將命令屬性設置為空。 #t#

批處理SQL語句

很多數(shù)據(jù)庫支持將多條命令合并或批處理成一條單一命令執(zhí)行。例如,SQL Server使您可以用分號“;”分隔命令。將多條命令合并成單一命令,能減少到服務器的行程數(shù),并提高應用程序的性能。例如,可以將所有預定的刪除在應用程序中本地存儲起來,然后再發(fā)出一條批處理命令調用,從數(shù)據(jù)源刪除它們。

雖然這樣做確實能提高性能,但是,當 ADO.NET操作對DataSet中的數(shù)據(jù)更新進行管理時,可能會增加應用程序的復雜性。要保持簡單,可能要在DataSet中為每個DataTable創(chuàng)建一個DataAdapter。

用多個表填充DataSet

如果使用批處理SQL語句檢索多個表并填充DataSet,***個表用指定給Fill方法的表名命名。 ADO.NET操作后面的表用指定給Fill方法的表名加上一個從1開始并且增量為1的數(shù)字命名。例如,如果運行下面的代碼。

用DataReader檢索二進制大對象(BLOB)時,應該將CommandBehavior.SequentialAccess傳遞給ExecuteReader方法調用。因為DataReader的默認行為是每次Read都將整行加載到內存,又因為BLOB值可能非常大,所以結果可 ADO.NET操作能由于單個BLOB而使大量內存被用光。SequentialAccess將DataReader的行為設置為只加載請求的數(shù)據(jù)。然后還可以使用GetBytes或GetChars控制每次加載多少數(shù)據(jù)。


網站欄目:具體使用ADO.NET操作相關技巧
路徑分享:http://www.dlmjj.cn/article/dhhsiid.html