溫馨提示×

溫馨提示×

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

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

ADO操作的方法舉例分析

發(fā)布時間:2021-12-04 16:01:18 來源:億速云 閱讀:96 作者:iii 欄目:編程語言

本篇內(nèi)容主要講解“ADO操作的方法舉例分析”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“ADO操作的方法舉例分析”吧!

進行ADO操作時需要注意相關(guān)的問題,你還可以使用另外一種方法。vbdata-l@peach.ease.lsoft.com列表服務(wù)上一場長時間的討論得出了一種我稱之為預先綁定(Prebinding)的方法

當你只需引用Field對象一次時,這種技術(shù)沒有什么幫助;但在客戶機/服務(wù)器應用中,預先綁定方法非常理想。使用這種方法時,你要創(chuàng)建多個獨立的、命名的Field對象,并把這些對象設(shè)置為Recordset對象Fields集合中的成員。編寫代碼的時候,你首先要為每一個想要使用的字段創(chuàng)建一個命名的Field對象,例如: 

在編寫代碼的時候,你還必須考慮到其他一些影響性能的因素。其中一些因素與ADO沒有什么關(guān)系——它們與COM有關(guān)。Microsoft最近的一份白皮書指出,在Windows   2000   ASP頁面中執(zhí)行ADO操作(連接,查詢,處理)要比調(diào)用COM組件執(zhí)行同樣的代碼更快。

這個結(jié)論并不令人奇怪:當我們從VB調(diào)用一個外部COM組件(處于當前進程之外的一些代碼),訪問COM組件以及把控制傳遞給ADO操作時在后臺進行的操作復雜得出奇,而且速度很慢。雖然我們沒有必要刻意避免調(diào)用COM組件去運行ADO代碼。

但是,我們不應該簡單地把多個獨立的ADO操作封裝成大量的小型COM組件,然后在需要的時候每次都去調(diào)用它們。相反,ADO操作我們應該盡量把全部邏輯封裝到一個COM組件里面,使得程序只需一次調(diào)用,COM就能夠完成大多數(shù)(如果不是全部)操作。

我相信,你已經(jīng)發(fā)現(xiàn)運行二進制形式的(例如COM組件)ADO代碼要比運行ASP之類的解釋執(zhí)行代碼要快。因此,你應該尋找一些方法,減少進入COM組件和從COM組件返回所需要的昂貴開銷。

如果你離不開Command對象,或者不能預先綁定Field對象并在必要時重用,那么你應該考慮避免多余的對象創(chuàng)建操作的技術(shù)。在這種情況下,ADO操作把存儲過程作為Connection對象的方法調(diào)用有著更重要的意義。另外,用先行綁定的方式引用Field屬性也有助于改善性能。記住操作完成后必須進行的清理工作:關(guān)閉Connection和Recordset對象,然后把它們設(shè)置成Nothing。    

為了讓代碼和代碼編寫者都表現(xiàn)出***的性能,請記住以下基本規(guī)則:利用連接池和異步連接;減少ADO代碼和數(shù)據(jù)庫服務(wù)器通信的次數(shù);選用一種COM-先行綁定技術(shù);除非必要,盡量避免使用代價昂貴的ADO操作,例如Recordset和Command對象;

如有可能,用Return   Status和Output參數(shù)替代記錄集。盡可能地提高查詢的效率,如有可能,ADO操作不要忘了利用存儲過程。詳細地告訴ADO你想要它做些什么,避免讓ADO猜測你的意圖——顯式地指定ADO   CommandType,使用adExecuteNoRecords之類的選項。   

到此,相信大家對“ADO操作的方法舉例分析”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學習!

向AI問一下細節(jié)

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

ado
AI