Microsoft® Activex® Data Objects, ili ADO, je alat koji se koristi za pristup bazama podataka ili drugim izvorima podataka. To je jedan oblik objekata Component Object Model (COM) koje je dizajnirao Microsoft® kako bi pomogli komponentama koje su napisane u različitim programskim jezicima da funkcioniraju zajedno. ADO spada u grupu alata koji se općenito nazivaju COM proizvodi.
Activex® Data Objects povećava fleksibilnost za programere baze podataka i za funkcije programiranja koje koriste te objekte podataka. Služi kao sloj između programskog jezika i svih sredstava koja se koriste za pristup objektima podataka. To znači da programer može napisati program koji pristupa objektima podataka bez potrebe da zna kako je baza podataka postavljena. Nije potrebno poznavanje SQL-a za pristup objektima podataka kada se koristi Activex®, iako se ADO može koristiti za izvršavanje SQL naredbi.
Postoje četiri zbirke Activex® podatkovnih objekata: polja, svojstva, parametri i pogreške. Polja su zbirke objekata koji odgovaraju danom zapisu ili skupu zapisa pod određenim naslovom stupca. Svojstva su objekti koji opisuju značajke danog objekta. Parametri su aspekt naredbenih objekata koji određuju hoće li se i kako promijeniti ponašanje objekta naredbe. Pogreške su skup svih pogrešaka koje je stvorio pružatelj usluga koje se javljaju tijekom Activex® operacije.
Activex® Data Objects uključuje 12 vrsta objekata: Connection, Command, Recordset, Immediate, Batch, Transaction, Record, Stream, Parameter, Field, Property and Error. Objekti podataka o vezi pohranjuju informacije o tome kako je veza s podacima stvorena i održavana. Objekt Command skup je uputa koje se šalju bazi podataka o tome koje se informacije traže. Objekt Field je stupac podataka istog tipa podataka. Objekt Record je zbirka objekata Field, a zbirka zapisa je Recordset objekt.
Skup zapisa rezultat je kombiniranih zapisa i polja koja odgovaraju svojstvima koja su upitna u bazi podataka. Informacije u objektu skupa zapisa mogu biti jednostavan popis ili podskup informacija iz tablice podataka koji se podudaraju s filterima korištenim za formiranje zahtjeva. Jednom kada se kreira, objekti neposrednih i skupnih podataka opisuju je li i kako je skup zapisa zaključan. Objekt podataka Transaction, kada je dopušten, započinje i završava podatkovnu transakciju.
Objekti podataka toka koriste se unutar Recordset objekta za čitanje ili pisanje toka bajtova. Objekt Parametar podataka određuje kako procedura funkcionira ovisno o tome koja je akcija potrebna. Objekti podataka o pogreškama postaju dio zbirke pogrešaka. Objekti podataka o svojstvu definiraju sposobnost koju pružatelj smatra potrebnom.