Il Modello ad Oggetti di ADO - Errors ed Error


Home Page | Commenti | Articoli | Faq | Documenti | Ricerca | Archivio | Storie dalla Sala Macchine | Contribuire | Login/Register

L'insieme Errors contiene tutti gli oggetti Error generati in seguito a un singolo errore relativo al provider.

Osservazioni
Qualsiasi operazione che implica l'utilizzo di oggetti ADO puo' generare uno o piu' errori di provider. Quando si verificano gli errori, uno o piu' oggetti Error vengono posizionati nell'insieme Errors della Connection.

Quando un'altra operazione ADO genera un errore, l'insieme Errors viene cancellato e il nuovo set di oggetti Error viene posizionato.

Ciascun oggetto Error rappresenta un errore di provider specifico e non un errore ADO. Questi ultimi sono sottoposti al meccanismo di gestione delle eccezioni in fase di esecuzione. Se in Microsoft Visual Basic si verifica ad esempio un errore specifico ADO, verra' avviato un evento On Error e l'errore verra' visualizzato nell'oggetto Err.

Le operazioni ADO che non generano errori non hanno alcun effetto sull'insieme Errors. Utilizzare Clear per cancellare manualmente l'insieme.

Il set di oggetti Error dell'insieme descrive tutti gli errori verificatisi in seguito a un'istruzione singola. L'enumerazione degli errori specifici nell'insieme consente di eseguire routine di gestione degli errori per determinare con maggiore precisione la causa e l'origine di un errore e intraprendere le azioni appropriate per correggerlo.

Alcuni metodi e proprieta' restituiscono avvisi visualizzati come oggetti Error nell'insieme senza tuttavia interrompere l'esecuzione di un programma. Prima di richiamare i metodi Resync, UpdateBatch o CancelBatch su un Recordset, il metodo Open su una Connection o impostare la proprieta' Filter su un oggetto Recordset, richiamare Clear sull'insieme Errors per leggere la proprieta' Count e verificare gli avvisi restituiti.

Nota
Per ulteriori informazioni sulla generazione di errori nel corso di un'operazione ADO, vedere l'argomento relativo all'oggetto Error.

Torna alla mappa

Count

Indica il numero di oggetti contenuti nell'insieme. e' una proprieta' di sola lettura. Se il valore restituito e' pari a 0, l'insieme e' vuoto e non contiene nessun oggetto.

Nota:
La numerazione degli oggetti nell'insieme parte da 0 e non da 1.

Item

Restituisce un elemento specifico dall'insieme in base al nome o al suo numero ordinale.

Sintassi


oggetto = Errors.Item( indice )

oggetto rappresenta l'oggetto Error che verra' restituito.
indice e' il nome o il numero dell'oggetto Error da reperire.

Osservazioni
Utilizzare questo metodo per reperire un oggetto dall'insieme e poterne poi interrogare le proprieta' per conoscere i dettagli dell'errore verificatosi. Se non e' possibile trovare nell'insieme l'oggetto corrispondente ad indice si verifichera' un errore.

Item e' il metodo predefinito per tutti gli insiemi, quindi e' possibile riferirsi a questo metodo anche con la sintassi semplificata


oggetto = Errors( indice )

Clear

Rimuove tutti gli oggetti contenuti nell'insieme.
Utilizzare questo metodo per ripulire l'insieme prima di eseguire operazioni che potrebbero generare errori o durante le operazioni di recupero di un errore in modo controllato.

Sintassi


Errors.Clear

Un oggetto Error contiene dettagli sugli errori di accesso ai dati relativi a una singola operazione che coinvolge il driver.

E' possibile leggere le proprieta' dell'oggetto Error per ottenere informazioni specifiche su ciascun errore, tra cui:

  • Description contiene il testo dell'errore.
  • Number contiene il valore numerico assegnato all'errore dal driver
  • Source identifica l'oggetto che ha riportato l'errore. Questa proprieta' e' particolarmente utile quando si dispone di piu' oggetti Error nell'insieme Errors in seguito a una richiesta su una fonte dati.
  • SQLState e NativeError, che forniscono informazioni dalle fonti dati SQL.

Un errore di provider rilevato viene posizionato nell'insieme Errors dell'oggetto Connection.

ADO supporta la restituzione di piu' errori da parte di una singola operazione ADO per consentire la creazione di informazioni sull'errore specifiche del provider. Per ottenere queste informazioni complete sull'errore in un gestore di errori, utilizzare le funzioni di intercettazione degli errori appropriate per il linguaggio o l'ambiente operativo, quindi utilizzare i cicli nidificati per enumerare le proprieta' di ciascun oggetto Error presente nell'insieme Errors.

Microsoft Visual Basic e VBScript
se non e' disponibile un oggetto Connection. valido, sara' necessario recuperare le informazioni sull'errore dall'oggetto Err.

Allo stesso modo dei provider, ADO cancella l'oggetto OLE Error Info prima di eseguire una chiamata che potrebbe generare un nuovo errore di provider. L'insieme Errors sull'oggetto Connection. viene tuttavia cancellato e compilato solo quando il provider genera un nuovo errore o quando viene richiamato il metodo Clear.

Torna alla mappa

Description

Restituisce una stringa che descrive l'errore verificatosi.

Osservazioni
Questa proprieta' consente di ottenere una breve descrizione dell'errore. Visualizzare questa proprieta' per avvertire l'utente di un errore che non e' possibile gestire. La stringa verra' fornita da ADO o dal driver interessato.

NativeError

Ritorna il codice di errore specifico del driver.

Osservazioni
Utilizzare questa proprieta' per recuperare le informazioni sull'errore specifico del database. Quando si utilizza Microsoft ODBC Provider for OLE DB con un database Microsoft® SQL Server, i codici di errore nativi provenienti dal server SQL passano attraverso ODBC e ODBC Provider alla proprieta' NativeErrorNativeError di ADO.

Number

Indica il numero che identifica in modo univoco un oggetto Error.

Osservazioni
Utilizzare questa proprieta' per determinare il tipo di errore verificatosi. Il valore della proprieta' e' un numero univoco che corrisponde alla condizione di errore.

Source

Indica il nome dell'oggetto o dell'applicazione che in origine ha generato un errore.

Osservazioni
Source viene utilizzata su un oggetto Error per determinare il nome dell'oggetto o dell'applicazione che in origine ha generato un errore, come ad esempio un nome di classe o l'ID programmatico dell'oggetto. Per gli errori in ADODB il valore della proprieta' sara' ADODB.NomeOggetto, dove NomeOggetto e' il nome dell'oggetto che ha generato l'errore.

Sulla base delle informazioni relative agli errori fornite dalle proprieta' Source, Number e Description degli oggetti Error e' possibile creare un codice in grado di gestire l'errore in modo appropriato.

SQLState

Indica lo stato SQL per l'oggetto Error, lo stato viene restituito come una stringa di 5 caratteri basata sullo standard SQL ANSI.

Osservazioni
La proprieta' SQLState viene utilizzata per leggere il codice di errore a cinque caratteri restituito dal provider in seguito a un errore verificatosi durante l'elaborazione di un'istruzione SQL. Quando ad esempio si utilizza il provider Microsoft OLE DB Provider per ODBC con un database SQL Server, i codici di errore vengono generati da ODBC sulla base di errori specifici di ODBC o di quelli generati da SQL Server e vengono quindi convertiti in errori ODBC. Tali codici di errore sono documentati nello standard SQL ANSI, ma vengono implementati in modo diverso a seconda delle fonti dati utilizzate.


I commenti sono aggiunti quando e soprattutto se ho il tempo di guardarli e dopo aver eliminato le cagate, spam, tentativi di phishing et similia. Quindi non trattenete il respiro.

Nessun messaggio this document does not accept new posts

Precedente Successivo


Davide Bianchi, lavora come Unix/Linux System Administrator presso una societa' di "sicurezza informatica" (aka: $networkgestapo) di Haarlem. Contatti: mail: davide AT onlyforfun.net , Jabber: davideyeahsure AT gmail.com,

Volete contribuire? Leggete come!.
 
 

Il presente sito e' frutto del sudore della mia fronte (e delle mie dita), se siete interessati a ripubblicare uno degli articoli, documenti o qualunque altra cosa presente in questo sito per cortesia datemene comunicazione (o all'autore dell'articolo se non sono io), cosi' il giorno che faccio delle aggiunte potro' avvisarvi e magari mandarvi il testo aggiornato.


Questo sito era composto con VIM, ora e' composto con VIM ed il famosissimo CMS FdT.

Questo sito non e' ottimizzato per la visione con nessun browser particolare, ne' richiede l'uso di font particolari o risoluzioni speciali. Siete liberi di vederlo come vi pare e piace, o come disse qualcuno: "Finalmente uno dei POCHI siti che ancora funzionano con IE5 dentro Windows 3.1".

Web Interoperability Pleadge Support This Project
Powered By Gort