Microsoft® Activex® Data Objects, o ADO, è uno strumento utilizzato per accedere a database o altre origini dati. È una forma di oggetti COM (Component Object Model) progettati da Microsoft® per aiutare i componenti scritti in diversi linguaggi di programmazione a funzionare insieme. ADO fa parte di un gruppo di strumenti generalmente denominati prodotti COM.
Activex® Data Objects aumenta la flessibilità per gli sviluppatori di database e per le funzioni di programmazione che utilizzano tali oggetti dati. Funge da strato tra il linguaggio di programmazione e qualsiasi mezzo utilizzato per accedere agli oggetti dati. Ciò significa che lo sviluppatore può scrivere un programma che accede agli oggetti dati senza bisogno di sapere come è impostato il database. Non è necessaria alcuna conoscenza di SQL per accedere agli oggetti dati quando viene utilizzato Activex®, sebbene ADO possa essere utilizzato per eseguire comandi SQL.
Esistono quattro raccolte di Activex® Data Objects: campi, proprietà, parametri ed errori. I campi sono raccolte di oggetti che corrispondono a un dato record o recordset sotto una particolare intestazione di colonna. Le proprietà sono oggetti che descrivono le caratteristiche di un determinato oggetto. I parametri sono un aspetto degli oggetti Command che determinano se e come cambierà il comportamento dell’oggetto Command. Gli errori sono una raccolta di eventuali errori creati dal provider che si verificano durante un’operazione Activex®.
Activex® Data Objects include 12 tipi di oggetti: connessione, comando, recordset, immediato, batch, transazione, record, flusso, parametro, campo, proprietà ed errore. Gli oggetti dati di connessione memorizzano informazioni su come è stata creata e gestita la connessione ai dati. L’oggetto Command è un insieme di istruzioni che vengono inviate al database riguardo alle informazioni richieste. Un oggetto Field è una colonna di dati dello stesso tipo di dati. Un oggetto Record è una raccolta di oggetti Campo e una raccolta di record è un oggetto Recordset.
Il Recordset è il risultato dei record e dei campi combinati che corrispondono alle proprietà che sono state interrogate sul database. Le informazioni in un oggetto Recordset possono essere un semplice elenco o un sottoinsieme di informazioni dalla tabella dati che corrisponde ai filtri utilizzati per formare la richiesta. Una volta creato, gli oggetti dati Immediato e Batch descrivono se e come un recordset è bloccato. L’oggetto dati Transaction, quando consentito, avvia e termina una transazione di dati.
Gli oggetti di dati di flusso vengono utilizzati all’interno di un oggetto Recordset per leggere o scrivere un flusso di byte. L’oggetto dati Parameter determina il funzionamento di una procedura in base all’azione necessaria. Gli oggetti dati di errore diventano parte della raccolta degli errori. Gli oggetti dati di proprietà definiscono un’abilità ritenuta necessaria dal provider.