共用方式為


Status 屬性 (ADO 欄位)

指出 Field 物件的狀態。

傳回值

傳回 FieldStatusEnum 值。 預設值為 adFieldOK

言論

記錄欄位狀態

在呼叫物件的 Update 方法之前,會快取 Record 物件的 Fields 集合中 Field 物件的值變更。 此時,如果 Field 值變更造成錯誤,OLE DB 就會引發錯誤 DB_E_ERRORSOCCURRED(2147749409)。 Fields 集合中任何 Field 物件的 Status 屬性,將包含 FieldStatusEnum 描述問題原因的值。

為了增強效能,在呼叫 Update 方法之前,會快取 Record 物件的 Fields 集合的新增和刪除,然後在批次開放式更新中進行變更。 如果未呼叫 Update 方法,則不會更新伺服器。 如果有任何更新失敗,則會傳回 OLE DB 提供者錯誤(DB_E_ERRORSOCCURRED),而且 Status 屬性表示作業和錯誤狀態代碼的合併值。 例如,adFieldPendingInsert OR adFieldPermissionDenied。 每個 FieldStatus 屬性可用來判斷為何未新增、修改或刪除 Field

新增、修改或刪除 Field 時遇到的許多問題類型,都會透過 [狀態] 屬性來回報。 例如,如果使用者刪除 Field,則會標示為要從 Fields 集合中刪除。 如果後續的 Update 傳回錯誤,因為使用者嘗試刪除他們沒有許可權的 FieldField 會有 adFieldPermissionDenied OR adFieldPendingDeleteStatus。 呼叫 CancelUpdate 方法會還原原始值,並將 Status 設定為 adFieldOK

同樣地,Update 方法可能會傳回錯誤,因為新增了新的 Field,並指定了不適當的值。 在此情況下,新的 Field 會位於 Fields 集合中,且狀態為 adFieldPendingInsert,而且可能 adFieldCantCreate (視您的提供者而定)。 您可以為新的 Field 提供適當的值,然後再次呼叫 Update

Recordset 欄位狀態

在呼叫物件的 Update 方法之前,會快取 recordset Recordset 的 Fields 集合中 Field 物件的值變更。 此時,如果 Field 值變更造成錯誤,OLE DB 就會引發錯誤 DB_E_ERRORSOCCURRED(2147749409)。 Fields 集合中任何 Field 物件的 Status 屬性,將包含 FieldStatusEnum 描述問題原因的值。

適用於

Field 物件

另請參閱

Status 屬性範例 (Field) (VB)
Status 屬性範例 (VC++)