ADO

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

ADO (от англ. ActiveX Data Objects — «объекты данных ActiveX») — интерфейс программирования приложений для доступа к данным, разработанный компанией Microsoft (MS Access, MS SQL Server) и основанный на технологии компонентов ActiveX. ADO позволяет представлять данные из разнообразных источников (реляционных баз данных, текстовых файлов и т. д.) в объектно-ориентированном виде.

Объектная модель ADO состоит из следующих объектов высокого уровня и семейств объектов:

  • Connection (представляет подключение к удалённому источнику данных)
  • Recordset (представляет набор строк, полученный от источника данных)
  • Command (используется для выполнения команд и SQL-запросов с параметрами)
  • Record (может представлять одну запись объекта Recordset или же иерархическую структуру, состоящую из текстовых данных)
  • Stream (используется для чтения и записи потоковых данных, например, документов XML или двоичных объектов)
  • Errors (представляет ошибки)
  • Fields (представляет столбцы таблицы базы данных)
  • Parameters (представляет набор параметров SQL-инструкции)
  • Properties (представляет набор свойств объекта)

Компоненты ADO используются в языках высокого уровня, таких как VBScript в ASP, JScript в WSH, Visual Basic, Delphi.

Последней версией ADO является версия 2.8. В рамках платформы Microsoft .NET интерфейс ADO заменён ADO.NET.

  • Пример использования ADO в ASP. Получаем поле «Name» из таблицы «Phonebook», где «PhoneNumber» равно «555-5555».
Dim myconnection, myrecordset, name
Set myconnection = server.createobject("ADODB.Connection")
Set myrecordset = server.createobject("ADODB.Recordset")

myconnection.open mydatasource
myrecordset.open "Phonebook", myconnection

myrecordset.find "PhoneNumber = '555-5555'"
name = myrecordset.fields.item("Name")
myrecordset.close
 
set myrecordset = nothing
set myconnection = nothing
  • Эквивалент предшествующего кода, который использует SQL-скрипты вместо объекта Recordset.
dim myconnection, myrecordset, name
set myconnection = server.createobject("ADODB.connection")
myconnection.open mydatasource
set myrecordset = myconnection.execute( _
    "SELECT Name FROM Phonebook WHERE PhoneNumber = '555-5555'")
name = myrecordset(0) 
myrecordset.close
 
set myrecordset = nothing
set myconnection = nothing