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:
- Створення об'єкта з'єднання для підключення до бази даних.
- Створення об'єкта набору записів з метою отримання даних.
- Відкрите з'єднання
- Заповнити запис, відкривши його і передаючи потрібне ім'я таблиці або SQL заяву як параметр для відкритої функції.
- Зафіксуйте зміни, внесені в дані (якщо такі є) за допомогою оновлень або UpdateBatch методами.
- Закрити базу даних
ASP приклад
Ось ASP наприклад, за допомогою ADO, щоб вибрати поле "Name", з таблиці з ім'ям "Phone number", де "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
Це еквівалентно наступним ASP-код, який використовує звичайні 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)