Proprietà Status (Field - ADO)

Indica lo stato di un oggetto Field.

Valore restituito

Restituisce un valore FieldStatusEnum. Il valore predefinito è un valore adFieldOK.

Osservazioni

Stato del campo Record

Le modifiche apportate al valore di un oggetto Field nella raccolta Fields di un oggetto Record vengono memorizzate nella cache fino a quando non viene chiamato il metodo Update dell'oggetto. A questo punto, se la modifica al valore del Campo ha causato un errore, OLE DB genera l'errore DB_E_ERRORSOCCURRED (2147749409). La proprietà Status di uno degli oggetti Field nella raccolta Fields che ha causato l'errore conterrà un valore dell'oggetto FieldStatusEnum che descrive la causa del problema.

Per migliorare le prestazioni, le aggiunte e le eliminazioni alle raccolte Fields dell'oggetto Record vengono memorizzate nella cache fino a quando non viene chiamato il metodo Update e quindi le modifiche vengono eseguite in un aggiornamento ottimistico batch. Se il metodo Update non viene chiamato, il server non viene aggiornato. Se gli aggiornamenti hanno esito negativo, viene restituito un errore del provider OLE DB (DB_E_ERRORSOCCURRED) e la proprietà Status indica i valori combinati del codice di stato dell'operazione e dell'errore. Ad esempio, adFieldPendingInsert OR adFieldPermissionDenied. La proprietà Status di ogni Campo può essere usata per determinare il motivo per cui il Campo non è stato aggiunto, modificato o eliminato.

Molti tipi di problemi riscontrati durante l'aggiunta, la modifica o l'eliminazione di un Campo vengono segnalati tramite la proprietà Status. Ad esempio, se l'utente elimina un oggetto Field, viene contrassegnato per l'eliminazione dalla raccolta Fields. Se l'aggiornamento successivo restituisce un errore perché l'utente ha tentato di eliminare un Campo per cui non dispone dell'autorizzazione, il Campo avrà lo StatoadFieldPermissionDenied OR adFieldPendingDelete. La chiamata al metodo CancelUpdate ripristina i valori originali e imposta Status su adFieldOK.

Analogamente, il metodo Update può restituire un errore perché è stato aggiunto un nuovo Campo e fornito un valore inappropriato. In tal caso, il nuovo Campo si troverà nella raccolta Fields e avrà lo stato adFieldPendingInsert e forse adFieldCantCreate (a seconda del provider). È possibile specificare un valore appropriato per il nuovo Campo e chiamare di nuovo Update.

Stato del campo Recordset

Le modifiche apportate al valore di un oggetto Field nella raccolta Fields di un oggetto Recordset vengono memorizzate nella cache fino a quando non viene chiamato il metodo Update dell'oggetto. A questo punto, se la modifica al valore del Campo ha causato un errore, OLE DB genera l'errore DB_E_ERRORSOCCURRED (2147749409). La proprietà Status di uno degli oggetti Field nella raccolta Fields che ha causato l'errore conterrà un valore dell'oggetto FieldStatusEnum che descrive la causa del problema.

Si applica a

Oggetto Field

Vedere anche

Esempio della proprietà Status (Field) (VB)
Esempio della proprietà Status (VC++)