Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lr_new.doc
Скачиваний:
2
Добавлен:
09.11.2019
Размер:
649.22 Кб
Скачать

Контрольні питання

  1. Як створити статичний запит?

  2. Як створити параметричний запит?

  3. Як виконати запит?

  4. Як звернутися до збереженої процедури?

  5. Як передати в процедуру параметри?

Лабораторна робота № 8 Робота з компонентами InterBase Express (ibx),ado Ціль роботи

  1. Отримання знань про технологію InterBase Express.

  2. Придбання навиків в роботі з компонентами InterBase Express і застосуванні їх в додатку.

  3. Отримання знань про технологію ADO.

  4. Придбання навиків у використовуванні компонентів ADO в клієнтських додатках.

Порядок виконання роботи

По номеру варіанту вибрати завдання і відповідно до методичних вказівок, за матеріалами рекомендованої літератури і конспекту лекцій виконати завдання і оформити звіт по роботі.

Зміст звіту

  1. Опис послідовності дій при створенні додатку з використанням компонентів InterBase Express.

  2. Малюнки отриманих при розробці форм додатку.

  3. Опис послідовності дій при створенні форм з використанням компонентів ADO.

Методичні вказівки

Технологія InterBase Express розрахована на створення «полегшеного» клієнта. З цією метою вона надає програмісту спосіб безпосереднього звернення до промислового серверу InterBase без використання машини баз даних BDE або подібних засобів доступу до даних.

Характерною особливістю використовування IBX є створення з'єднання з БД, яке досягається за допомогою двох компонентів: TIBDatabase і TIBTransaction. Тільки після розміщення на формі цих компонентів і їх настройки, можуть отримати доступ до даних і інші компоненти IBX.

Всі компоненти для реалізації технології IBX зосереджені на панелі InterBase галереї компонентів Delphi.

TIBDatabase - створює з'єднання з БД InterBase. Властивість DatabaseName для локального серверу містить ім'я файла БД. При зв'язку з видаленою БД по протоколу TCP/IP ім'я записується у форматі <имя_сервера>:<имя_файла_БД>. Компонент може управляти декількома транзакціями одночасно. Властивість DefaultTransaction посилається на транзакцію, якій компонент управляє в даний момент.

TIBTransaction - повинен бути пов'язаний з компонентом TIBDatabase для встановлення зв'язку з InterBase.

TIBTable - компонент повторює у функціональному відношенні Bde-компонент TTable, тому його основні властивості, методи, події, а також прийоми роботи з ним схожі.

TIBQuery - є функціональним аналогом компоненту TQuery.

TIBStoredProc - повністю повторює функціональність TStoredProc.

TIBDataSet - призначений для перегляду і модифікації набору записів, вказаного в його властивості SelectSQL. Особливістю компоненту є та обставина, що НД не обновлятиметься до тих пір, поки не будуть визначені модифікуючі його Sql-оператори в його рядкових властивостях InsertSQL, DeleteSQL, ModifySQL. Якщо, наприклад, в його властивості InsertSQL буде записаний правильний оператор Insert, набір даних буде здатний вставляти записи, але тільки так, як це визначено в цьому операторі. Якщо дії користувача не співпадають з тими, що визначені додатковими Sql-операторами, вони відкидаються.

TIBSQL - призначений для виконання Sql-запитів з мінімальними витратами часу. Він не може бути пов'язаний з TDataSource і, отже, з візуалізуючими компонентами.

Простий приклад роботи з основними компонентами InterBase Express.

  1. Почнемо новий проект і додамо в нього новий модуль даних.

  2. Розмістимо на модулі даних компоненти TIBDatabase і TIBTransaction, компонент TIBTable і компонент TDataSource.

Рисунок 16 - Вигляд форми модуля даних з компонентами IBX

  1. Розкриємо список властивості DatabaseName компоненту IBDatabase1 і з його допомогою встановимо посилання на необхідну базу даних.

  2. За допомогою списку DefaultDatabase необхідно зв'язати компонент IBTransaction1 з компонентом IBDatabase1.

  3. Настроємо таблицю IBTable1 на зв'язок з IBDatabase1 (властивість Database) і з IBTransaction1 (властивість Transaction), після чого в списку TableName компоненту виберемо таблицю Owner. Відкриємо таблицю (помістимо True у властивість Active). При цьому автоматично активізуються компоненти TIBDatabase і TIBTransaction.

  4. Необхідно зв'язати компонент DataSource1 з IBTable1.

  5. Активізуємо головну форму програми (модуль Unit1) і покладемо на неї сітку TDBGrid.

  6. За допомогою File> Use Unit головного меню Delphi пов'яжемо модуль Unit1 з модулем даних Unit2

  7. Помістимо у властивість DataSource сітки DBGrid1 посилання на DataSource1 модуля даних і запустимо програму. В результаті отримаємо форму:

Рисунок 17 - Зовнішній вигляд форми з інформацією про власників нерухомості

Починаючи з 5-й версії, Delphi підтримує технологію ADO (ActiveX Data Objects - об'єкти даних, побудовані як об'єкти ActiveX). На основі цієї технології створені відповідні компоненти-набори TADOTable, TADOQuery, TADOStoredProc, повторюючі у функціональному відношенні компоненти TTable, TQuery, TStoredProc, але не вимагаючі розгортання і настройки на клієнтській машині BDE.

Основною гідністю ADO є його природна орієнтація на створення «полегшеного» клієнта. В рамках цієї технології на машині розробника БД встановлюються базові об'єкти MS ADO і відповідні компоненти Delphi, що забезпечують використовування технології ADO. На машині серверу даних встановлюється так званий провайдер даних - деяка надбудова над спеціальною технологією OLE DB, що «розуміє» запити об'єктів ADO і «уміюча» переводити ці запити в потрібні дії з даними. Взаємодія компонентів ADO і провайдера здійснюється на основі універсальної для Windows технології ActiveX.

На машині серверу створюється і розміщується джерело даних, а на машині клієнта розташовуються зв'язні компоненти TADOConnection і компоненти-набори даних TADOTable, TADOQuery, TADOStoredProc, а також компоненти-набори TADODataSet, TADOCommand. Кожний з цих компонентів може зв'язуватися з провайдером даних або за допомогою зв'язного компоненту TADOConnection, або минувши його і використовуючи власну властивість ConnectionString.

Встановлення зв'язку з ADO є ключовим моментом всієї технології. Кожний компонент-набор-даних має дві властивості, за допомогою яких він може встановити зв'язок з ADO: Connection і ConnectionString.В перше поміщається посилання на спеціальний компонент TADOConnection, що грає роль концентратора з'єднання з ADO; в другу - власне рядок зв'язку. Ці властивості взаємовиключаючі, тобто установка значення в одне з них веде до очищення другого. При натисненні кнопки в рядку властивості ConnectionString компоненту TADOConnection з'являється вікно, показане на рисунку

Рисунок 18 - Діалогове вікно для формування з'єднання з ADO

Є дві можливості - послатися на спеціальний файл в першому рядку або сформувати опис зв'язку в інший. В першому випадку можна використовувати один і той же файл відразу для декількох з'єднань. Зміна вмісту в другому рядку вікна впливає тільки на відповідний компонент-набір або тільки на ті компоненти, які будуть посилатися на даний зв”язковий компонент і лише усередині однієї єдиної програми.

Для діалогового способу формування зв'язку необхідно вибрати перемикач Use Connection String і натиснути на кнопку Build. На екрані з'явиться діалогове вікно з чотирма закладками. Закладка Provider використовується для вибору механізму, який буде безпосередньо взаємодіяти з даними, одержуючи їх від клієнта і посилаючи їх йому. Вибір провайдера є визначальним чинником. Для різних типів даних повинні використовуватися тільки строго певні провайдери. Наприклад, для роботи з БД Access вибирається провайдер Microsoft Jet 4.0 OLE DB Provider. Закладка Connection визначає необхідні зв'язні параметри для вибраного провайдера. У відповідному рядку необхідно вказати повний шлях доступу до файла БД. Як додаткова інформація на цій закладці указується ім'я користувача і пароль.

Рисунок 19 - Закладка Connection діалогового вікна настройки зв'язку з провайдером Microsoft Jet 4.0 OLE DB Provider

В склад Ado-компонентів входять 4 компоненти - набір - TADOTable, TADOQuery, TADOStoredProc, TADODataSet. Вони аналогічні BDE-орієнтованим компонентам і більшість їх методів, властивостей і подій співпадають.

Контрольні питання

  1. Які компоненти використовує технологія InterBase Express?

  2. Які компоненти використовує технологія ADO?

  3. Де розташовані компоненти InterBase Express?

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]