此頁(yè)沒(méi)有內(nèi)容條目
內(nèi)容

         

Error 對(duì)象包含與單個(gè)操作(涉及提供者)有關(guān)的數(shù)據(jù)訪問(wèn)錯(cuò)誤的詳細(xì)信息。

objconn

parchildcolerrorparacrosobjerror

說(shuō)明

任何涉及 ADO 對(duì)象的操作都會(huì)生成一個(gè)或多個(gè)提供者錯(cuò)誤。每個(gè)錯(cuò)誤出現(xiàn)時(shí),一個(gè)或多個(gè) Error 對(duì)象將被放到 Connection 對(duì)象的 Errors 集合中。當(dāng)另一個(gè) ADO 操作產(chǎn)生錯(cuò)誤時(shí),Errors 集合將被清空,并在其中放入新的 Error 對(duì)象集。

注意   每個(gè) Error 對(duì)象都代表特定的提供者錯(cuò)誤而不是 ADO 錯(cuò)誤,ADO 錯(cuò)誤被記載到運(yùn)行時(shí)的例外處理機(jī)制中。例如,在 Microsoft Visual Basic 中,產(chǎn)生特定 ADO 的錯(cuò)誤將觸發(fā) On Error 事件并出現(xiàn)在 Err 對(duì)象中。關(guān)于 ADO 錯(cuò)誤的完整列表,請(qǐng)參閱 ADO 錯(cuò)誤代碼主題。

通過(guò) Error 對(duì)象的屬性可獲得每個(gè)錯(cuò)誤的詳細(xì)信息,其中包括以下內(nèi)容:

?Description 屬性,包含錯(cuò)誤的文本。

 

?Number 屬性,包含錯(cuò)誤常量的長(zhǎng)整型整數(shù)值。

 

?Source 屬性,標(biāo)識(shí)產(chǎn)生錯(cuò)誤的對(duì)象。在向數(shù)據(jù)源發(fā)出請(qǐng)求之后,如果 Errors 集合中有多個(gè) Error 對(duì)象,則將會(huì)用到該屬性。

 

?SQLStateNativeError 屬性,提供來(lái)自 SQL 數(shù)據(jù)源的信息。

出現(xiàn)提供者錯(cuò)誤時(shí),Error 對(duì)象將被放在 Connection 對(duì)象的 Errors 集合中。ADO 支持由單個(gè) ADO 操作返回多個(gè)錯(cuò)誤,以便顯示特定提供者的錯(cuò)誤信息。要在錯(cuò)誤處理程序中獲得豐富的錯(cuò)誤信息,可使用相應(yīng)的語(yǔ)言或所在工作環(huán)境下的錯(cuò)誤捕獲功能,然后使用嵌套循環(huán)枚舉出 Errors 集合的每個(gè) Error 對(duì)象的屬性。

Microsoft Visual Basic 及 VBScript   如果沒(méi)有有效的 Connection 對(duì)象,則需要檢索 Err 對(duì)象的錯(cuò)誤信息。

與提供者一樣,ADO 在進(jìn)行可能引發(fā)新的提供者錯(cuò)誤的調(diào)用前將清除 OLE Error Info 對(duì)象。但是,只有當(dāng)提供者產(chǎn)生新的錯(cuò)誤或 Clear 方法被調(diào)用時(shí),才能清空并充填 Connection 對(duì)象的 Errors 集合。

某些屬性和方法返回的警告以 Errors 集合中的 Error 對(duì)象的方式出現(xiàn),但并不中止程序的執(zhí)行。在調(diào)用 Recordset 對(duì)象的 Resync、UpdateBatch、或 CancelBatch 方法,或 Connection 對(duì)象的 Open 方法,或者在設(shè)置 Recordset 對(duì)象的 Filter 屬性之前,可通過(guò)調(diào)用 Errors 集合的 Clear 方法。這樣就可以讀取 Errors 集合的 Count 屬性,以測(cè)試返回的警告。