align="justify"> На сторінці ADO Палітри компонентів Delphi, крім компонентів сполуки є стандартні компоненти, що позначають набір даних і адаптовані для роботи з сховищем даних ADO.
На вкладці Connection (див. малюнок 1) необхідно вказати шлях до бази даних або сервер.
Рисунок 1 - Вікно підключення
Компонент TADOTable - використовується для доступу до сховищ даних ADO та подання інформації з них в табличному вигляді. Компонент надає прямий доступ до кожного запису і її полях, наслідуючи властивості і методи. Компонент зв'язується з базою даних через властивості Connection або ConnectionString.
Ім'я таблиці вказується у властивості TableName. Використовуючи властивість Readonly, можна встановити обмеження тільки для читання на дану таблицю, заборонивши, таким чином, можливість змінювати дані. У властивості MasterSource вказується компонент TDataSource, використовуваний для створення відносини посилальної цілісності.
Компонент TDataSource-цей компонент зв'язується з набором даних. Цей зв'язок здійснюється через властивість DataSet, яке містить інформацію про поточний стан набору даних. У цього компонента існує набір властивостей і методів, які полегшують роботу з ним.
Властивість AutoEdit-автоматично переводить набір даних в стан редагування, якщо має значення True, коли пов'язаний елемент введення отримує фокус.
Метод Edit-переводить зв'язаний набір даних в стан редагування.
Метод-обробник OnDataChange-викликається при редагуванні даних у зв'язаному візуальному компоненті.
Метод-обробник події OnUpdateData-викликається перед тим, як змінені дані будуть збережені в наборі даних. Оброблювач викликається перед виконанням методу Post.
. 2 Компоненти доступу до даних
Компоненти доступу до даних не є візуальними компонентами. Таблиці БД розташовуються на диску і є фізичними об'єктами. Для операцій з даними, що містяться в таблицях, використовуються набори даних. У термінах системи Delphi набір даних являє собою сукупність записів, взятих з однієї або декількох таблиць БД. Записи, що входять в набір даних, відбираються за певними правилами, при цьому в окремих випадках набір даних може включати в себе всі записи з пов'язаної з ним таблиці або не містити жодного запису. Набір даних є логічною таблицею, з якою можна працювати при виконанні програми. Взаємодія таблиці і набору даних нагадує взаємодія фізичного файлу і файлової змінної.
У Delphi для роботи з наборами даних служать компоненти DBTable і ADOTable, ADOQuery, DataAccess, DataControl.
Базові можливості доступу до БД забезпечує клас DataSet, що представляє набори даних у вигляді сукупності рядків і стовпців (записів і полів). Цей клас надає основні засоби навігації та редагування наборів даних.
Компонент Table -представляє собою набір даних, який в деякий момент часу може бути пов'язаний тільки з однією таблицею БД. Цей набір даних формується на базі навігаційного способу доступу до даних, тому компонент Table рекомендується використовувати для локальних БД. При роботі з віддаленими БД слід використовувати компонент Query. Зв'язок між таблицею і компонентом Table встановлюється через його властивості TableName, яке задає ім'я таблиці.
Компоненти для роботи з даними розташовані на сторінці DataControls (див. малюнок 2) палітри компонентів і призначені для побудови інтерфейсної частини програми.
Малюнок 2 - Палітра компонентів
Вони використовуються для навігації по набору даних, а також для відображення і редагування записів.
Інші компоненти служать для відображення і редагування відразу декількох записів. Прикладами таких компонентів є сітки DBGrid і DBCtrlGrid, що виводять записи набору даних в табличному вигляді. Візуальні компоненти для роботи з даними схожі на відповідні компоненти сторінок Standard і Additional і відрізняються, в основному, тим, що орієнтовані на роботу з БД і мають додаткові властивості DataSource і Datafield. Перше з них вказує на джерело даних, а друге - на поле набору даних, з яким пов'язаний візуальний компонент. Наприклад, Edit відображає строкове значення, дозволяючи користувачеві змінювати його.
При програмному зміні вмісту ці візуальних компонентів набір даних автоматично в режим редагування не перекладається. Для цієї мети в коді повинен попередньо викликатися метод Edit набору. Щоб зберегти зміни в полі (полях) поточного запису, ми повинні також передбачити відповідні дії, наприклад, виклик методу Post або перехід до іншого запису набору даних. У бібліотеці візуальних ...