Status 속성(ADO 필드)
Field 개체의 상태를 나타냅니다.
반환 값
FieldStatusEnum 값을 반환합니다. 기본값은 adFieldOK .
발언
레코드 필드 상태
Record 개체의 Fields 컬렉션에 있는 Field 개체의 값에 대한 변경 내용은 개체의 Update 메서드가 호출될 때까지 캐시됩니다. 이때 필드 값이 변경되면 OLE DB에서 오류 DB_E_ERRORSOCCURRED(2147749409)가 발생합니다. 오류를 발생시킨 Fields 컬렉션에 있는 Field 개체의 Status 속성에는 문제의 원인을 설명하는 FieldStatusEnum 값이 포함됩니다.
성능을 향상시키기 위해 Record 개체의 Fields 컬렉션에 대한 추가 및 삭제는 Update 메서드가 호출될 때까지 캐시된 다음 일괄 처리 낙관적 업데이트에서 변경됩니다. Update 메서드가 호출되지 않으면 서버가 업데이트되지 않습니다. 업데이트가 실패하면 OLE DB 공급자 오류(DB_E_ERRORSOCCURRED)가 반환되고 상태 속성은 작업 및 오류 상태 코드의 결합된 값을 나타냅니다. 예를 들어 adFieldPendingInsert 또는 adFieldPermissionDenied . 각 필드 대한 상태 속성을 사용하여 Field 추가, 수정 또는 삭제되지 않은 이유를 확인할 수 있습니다.
필드 추가, 수정 또는 삭제할 때 발생하는 많은 유형의 문제는 Status 속성을 통해 보고됩니다. 예를 들어 사용자가 필드삭제하면 Fields 컬렉션에서 삭제로 표시됩니다. 사용자가 권한이 없는 필드 삭제하려고 했기 때문에 후속 업데이트 오류를 반환하는 경우 필드adFieldPermissionDenied OR adFieldPendingDelete상태 갖게 됩니다. CancelUpdate 메서드를 호출하면 원래 값이 복원되고 상태 adFieldOK 설정합니다.
마찬가지로 Update 메서드는 새 필드 추가되고 부적절한 값이 지정되었기 때문에 오류를 반환할 수 있습니다. 이 경우 새 필드Fields 컬렉션에 있으며 adFieldPendingInsert 상태이며 공급자에 따라 adFieldCantCreate 수 있습니다. 새 필드 적절한 값을 제공하고 업데이트 다시 호출할 수 있습니다.
레코드 집합 필드 상태
Recordset Fields 컬렉션의 Field 개체 값에 대한 변경 내용은 개체의 Update 메서드가 호출될 때까지 캐시됩니다. 이때 필드 값이 변경되면 OLE DB에서 오류 DB_E_ERRORSOCCURRED(2147749409)가 발생합니다. 오류를 발생시킨 Fields 컬렉션에 있는 Field 개체의 Status 속성에는 문제의 원인을 설명하는 FieldStatusEnum 값이 포함됩니다.