Microsoft® Activex® Data Objects, or ADO, is a tool used to access databases or other data sources. It is one form of Component Object Model (COM) objects that were designed by Microsoft® to help components that were written in different programming languages to function together. ADO is among a group of tools generally referred to as COM products.
Activex® Data Objects increases flexibility for database developers and for programming functions that use those data objects. It serves as a layer between the programming language and whatever means is being used to access the data objects. This means the developer can write a program that accesses the data objects without needing to know how the database is set up. There is no knowledge of SQL needed to access data objects when Activex® is used, though ADO can be used to execute SQL commands.
There are four collections of Activex® Data Objects: fields, properties, parameters and errors. Fields are collections of objects that correspond to a given record or recordset under a particular column heading. Properties are objects that describe features of a given object. Parameters are an aspect of Command objects that determine whether and how the Command object's behavior will change. Errors are a collection of any provider-created errors that occur during an Activex® operation.
Activex® Data Objects includes 12 types of objects: Connection, Command, Recordset, Immediate, Batch, Transaction, Record, Stream, Parameter, Field, Property and Error. Connection data objects store information about how the connection to the data was created and maintained. The Command object is a set of instructions that are sent to the database regarding what information is requested. A Field object is a column of data of the same data type. A Record object is a collection of Field objects and a collection of records is a Recordset object.
The Recordset is the result of the combined records and fields which match the properties that were queried against the database. Information in a Recordset object can be a simple listing or a subset of information from the data table that matches the filters used to form the request. Once it is created, the Immediate and Batch data objects describe if and how a recordset is locked. The Transaction data object, when allowed, starts and ends a data transaction.
Stream data objects are used within a Recordset object to read or write a byte stream. The Parameter data object determines how a procedure functions depending on what action is needed. Error data objects become part of the error collection. Property data objects define an ability deemed necessary by the provider.