- •Організація баз даних і знань
- •7.080401 "Інформаційні управляючі системи і технології " і
- •7.080402 "Інформаційні технології проектування"
- •Загальні зауваження до проведенння лабораторних робіт
- •Основні засоби для роботи з базами даних вdelphi
- •Архітектура баз даних вdelphi
- •Компоненти для роботи з базами даних
- •Завдання для лабораторних робіт Лабораторна робота №1 Створення та реструктуризація бази даних.
- •Завдання:
- •Зміст звіту:
- •Порядок виконання роботи Створення псевдоніму dbe
- •Створення таблиць бд
- •Визначення цілісності посилання між таблицями бд
- •Лабораторна робота №2
- •Використання Database Explorer при розробці форм
- •Розробка форми з використанням компонентів tTable, tDataSource, tdbGrid
- •Розробка форми з використанням компонентів tTable, tDataSource, tdbEdit, tLabel і редактора полів
- •Лабораторна робота №3
- •Лабораторна робота № 4 Обробка полів таблиць бази даних
- •Завдання:
- •Зміст звіту.
- •Порядок виконання роботи Створення полів, що обчисляються
- •Створення полів вибору даних (lookup - полів).
- •Лабораторна робота № 5
- •Використання контейнера tDataModule
- •Компонент tdbLookupComboBox
- •Порядок виконання роботи
- •Лабораторна робота № 6
- •Лабораторна робота № 7
- •Установка значень для пошуку
- •Лабораторна робота №8
- •Використання методів FindFirst, FindLast, FindNext, FindPrior.
- •Загальні зауваження до роботи з компонентомtQuery
- •Лаборатора робота № 9
- •Лабораторна робота № 10
- •Лабораторна робота № 11
- •Лабораторна робота №12
- •Побудова простих звітів
- •Групування даних в звіті
- •Перелік рекомендованої лiтератури
- •Навчально-методичне видання організація баз даних та знань
- •7.080401 "Інформаційні управляючі системи і технології " і
- •7.080402 "Інформаційні технології проектування"
Архітектура баз даних вdelphi
З
агальний
склад засобів, необхідних для роботи
готового застосування з БД, а також
загальна структура застосування
зображені на рис. 3.
Додаток складається з невізуальних та візуальних компонентів роботи з БД, компонентів для видачі звітів (різновид візуальних компонентів), а також модулів даних.
Невізуальні компоненти мають прямий вихід на BDE, яка, в свою чергу, контактує з БД. Візуальні компоненти використовуються для відображення даних із невізуальних компонентів, тобто для забезпечення інтерфейсу користувача при роботі з даними. Модулі даних дозволяють централізовано зберігати деякі екземпляри невізуальних компонентів з метою забезпечення однотипного поводження наборів даних у всьому додатку.
Компоненти для роботи з базами даних
На рис. 4 показано взаємозв’язок компонентів для роботи з базами даних.


Рис. 4. Доступ до БД з точки зору додатку
Таблиця 1. Невізуальні компоненти для роботи з БД
|
Компоненти |
Призначення |
|
TDataBase |
Використовується при роботі в архітектурі “клієнт-сервер”. Здійснює з’єднання з віддаленою БД. |
|
TTable |
Реалізує набір даних(НД), джерелом даних для якого є одна таблиця БД. |
|
TQuery |
Реалізує набір даних, джерелом даних для якого є одна чи декілька таблиць БД. Структура запису НД, склад НД визначається SQL–запитом (операторSELECT). Дозволяє виконувати групові операції оновлення та вилучення в таблицях БД. |
|
TStoredProc |
Використовується в архітектурі “клієнт-сервер” для доступу до процедур, що зберігаються на віддаленій БД. |
|
TField |
Реалізує поле НД. TFieldстворюється також для кожного поля, що обчислюється, або поля, що повертає значення з іншого НД (LookUp), а також для результатів обчислення виразів та агрегатних функцій вSQL–запитах. |
|
TDataSource |
Проміжна ланка в ланцюжку “НД – TDataSource– Візуальні компоненти”. |
Таблиця 2. Візуальні компоненти для роботи з БД
|
Компоненти |
Призначення |
|
TBText |
Показує “тільки для читання” значення поля поточного запису НД. |
|
TDBEdit |
Забезпечує перегляд та зміну значення поля поточного запису НД. |
|
TDBCheckBox |
Забезпечує перегляд та зміну значення поля типу Boolean поточного запису НД. |
|
TDBRadioGroup |
Забезпечує можливість вибору значення для поля, що має фіксоване число варіантів значень. Значення подаються у вигляді радіокнопок . |
|
TDBMemo |
Дозволяє переглядати та коригувати значення Memo-поля (поле коментарію) в режимі текстового редактора. |
|
TDBListBox |
Виконується, коли треба вибрати значення поля зі списку, що показуються у вигляді рядків фіксованого розміру. Вміст списку визначається властивістю Items. |
|
TDBComboBox |
Використовується для тієї ж мети, що і TDBListBox, але список “випадає”. |
|
TDBLookUpListBox |
Використовується для вибору значення поля зі списку значень, що формується з певного стовпця іншого НД. Висота списку фіксована. |
|
TDBLookComboBox |
Використовується для тієї ж мети, що і TDBLookUpListBox, але список має комбінований вигляд (“випадає”) . |
|
TDBGrid |
Показує склад полів НД в “табличному” вигляді. |
|
TDBCtrlGrid |
Удосконалена версія TDBGrid. Дозволяє показувати склад одного запису НД в декількох рядках. |
|
TQuickRep |
Дозволяє робити форми звітів. |
|
TDBNavigator |
Дозволяє здійснювати навігацію по записам НД, переводити НД у стан вставки, зміни, включення запису, запам’ятовування змін. |
Задаючи значення властивості Nameвбудованих компонентівDelphi, використовують двох- або чотирьохсимвольний мнемонічний префікс, що полегшує визначення типу компонента. Наприклад, компонентиMemoмають префіксmе, компонентиEdit- префіксedі т.д. Інша частина ідентифікатора повинна являти собою зрозумілий опис об'єкта, наприклад:edCustomerNameабоmeComments.У табл. 3 наведені рекомендації щодо позначення типів компонентів при виборі імен деяких об'єктів. Майже всі префікси, які використовуються при позначенні імен об'єктів для роботи з базами даних, відповідають префіксам аналогічних об'єктів стандартних елементів керування з доданням перед ними буквиd. Наприклад, для імен об'єктів компонентівEditвикористовується префіксed, а для імен об'єктів компонентівDBEdit- префіксded.
Таблиця 3. Компоненти і їх рекомендовані префікси
|
Компонент |
Префікс |
Компонент |
Префікс |
|
BitBtn |
bb |
OpenDialog |
od_ |
|
Button |
bt |
OpenPictureDialog |
op_ |
|
Calendar |
ca |
PageControl |
pc |
|
ComboBox |
cb |
Panel |
pa |
|
Database |
db |
PopupMenu |
pu |
|
DataModule |
dm |
QRBand |
qba |
|
DataSource |
ds |
QRChildBand |
qcb |
|
DateTimePicker |
dt |
QRCompositeReport |
qcr |
|
DBChart |
dch |
QRDBCalc |
qdc |
|
DBCheckBox |
dck |
QRDBText |
qdt |
|
DBComboBox |
dсb |
QRDetailLink |
qdl |
|
DBCtrlGrid |
dcg |
QRExpr |
qex |
|
DBEdit |
ded |
QRGroup |
qgr |
|
DBGrid |
dgr |
QRLabel |
qla |
|
DBImage |
dim |
QRMemo |
qme |
|
DBListBox |
dlb |
QRSubDetail |
qsd |
|
DBLookupCombo |
dlco |
QRSysData |
qrs |
|
DBLookupComboBox |
dlcb |
Query |
qu |
|
DBLookupList |
dlli |
QuickRep |
qr |
|
DBLookupListBox |
dllb |
RadioButton |
rb |
|
DBMemo |
dme |
RadioGroup |
rg |
|
DBNavigator |
dna |
RichEdit |
re |
|
DBRadioGroup |
drg |
ScrollBar |
sa |
|
DBText |
dte |
ScrollBox |
sx |
|
Form |
fm |
SpeedButton |
sb |
|
Image |
im |
StatusBar |
st |
|
Label |
la |
TabControl |
tc |
|
ListBox |
Ib |
Table |
ta |
|
MainMenu |
mm |
Toolbar |
to |
|
Memo |
me |
TreeView |
tv |
