Середовища програмування Delphi 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Середовища програмування Delphi



 

 

Краматорськ


Методичні вказівки до виконання практичних робіт з дисципліни «Бази даних» призначені для студентів денної форми навчання спеціальностей 5.05010301 «Розробка програмного забезпечення». Денне відділення. Включає зміст практичних робіт, перелік завдань, перелік посилань / Укл. Ахромов М.О. – Краматорськ: МК ДДМА, 2012 – 56 стор.

 

Укладач М.О. Ахромов, викладач другої кваліфікаційної категорії

 

 

Розглянуто на засіданні циклової комісії електротехнічних дисциплін і комп’ютерно-інтегрованих технологій

Протокол від 2012 р. №

Голова циклової комісії

Л.А. Чернікова

 


Зміст

 

 

Передмова. 4

Основні засоби для роботи з базами даних в Delphi 5

Архітектура баз даних в Delphi 7

Компоненти для роботи з базами даних. 8

Практична робота № 1. 11

Практична робота № 2. 16

Практична робота № 3. 19

Практична робота № 4. 21

Практична робота № 5. 24

Практична робота № 6. 28

Практична робота № 7. 30

Практична робота № 8. 32

Загальні зауваження до роботи з компонентом TQuery. 35

Практична робота № 9. 37

Практична робота № 10. 39

Практична робота № 11. 41

Практична робота № 12. 44

Перелік посилань. 47

Додаток А.. 48

 

 


Передмова

 

 

Практичні роботи з дисципліни «Технологія програмування та створення програмних продуктів» для студентів спеціальностей 5.080405 «Програмування для електронно-обчислювальної техніки і автоматизованих систем» і 5.080406 «Експлуатація систем обробки інформації та прийняття рішень» розраховані на 48 годин і охоплюють головні розділи курсу.

Мета практичних робіт – практичне освоєння роботи з сучасними системами управління базами даних (СУБД), закріплення студентами матеріалу курсу, розглянутого на лекціях. Студенти повинні практично засвоїти методи розробки баз даних, технологію створення інформаційних систем.

Передбачені практичні роботи по наступним темам:

- створення та реструктуризація бази даних;

- розробка форм для роботи з однією таблицею,

- організація зв’язку Master-Detail між наборами даних,

- обробка полів таблиць бази даних;

- використання контейнера TDataModule;

- організація роботи з індексами;

- організація пошуку у базі даних;

- організація фільтрації у базі даних;

- організація статичних запитів за допомогою мови SQL;

- розробка застосування для роботи з таблицями, пов’язаними відношенням «багато-до-багатьох»;

- формування запитів мовою QBE та за допомогою засобу Visual Query Builder;

- побудова звітів.

Студентам пропонується виконувати практичні роботи на основі однієї з наступних предметних областей:

– маркетинг;

– менеджмент виробничих процесів;

– управління якістю;

– інформаційні технології;

– бухгалтерія;

– ремонт і обслуговування устаткування;

– планування і загальне управління;

– управління кадрами;

– рекламна діяльність;

– складське господарство;

– транспортне господарство;

– соціальна сфера.

За дозволом викладача студент може обирати предметну область самостійно.


ОСНОВНІ ЗАСОБИ ДЛЯ РОБОТИ З БАЗАМИ ДАНИХ В DELPHI

 

 

На рисунку 1 показана загальна архітектура доступу до баз даних в Delphi.

 

 

Рисунок 1– Архітектура доступу до бази даних

 

На рисунку 2 зображена модель взаємодії додатку з засобами Delphi.

 

 

Рисунок 2 – Модель взаємодії додатку з засобами Delphi

 

Database Explore (SQL Explore) – утиліта для конфігурації псевдонімів БД, перегляду структури БД, таблиць БД, видачі запитів до БД.

BDE (Borland Database Engine) – набір бібліотек, що виконує дії з доступу до даних в БД та перевірки їх правильності. Усі елементи управління баз даних Delphi інтенсивно звертаються до інтерфейсу API BDE (Application Programming Interface), тому нам не доведеться працювати з ним безпосередньо.

SQL Links – драйвери для роботи з «віддаленими» промисловими СУБД, такими як Sybase, MS SQL Server, Oracle. Доступ до таблиць локальних («персональних») СУБД (Paradox, dBase), а також робота з SQL-сервером Borland InterBase здійснюється BDE без використання SQL Links.

BDE Administration –утиліта для встановлення псевдонімів (імен) баз даних, параметрів БД і драйверів БД на конкретному комп’ютері, а також для встановлення загальних для усіх БД параметрів – формату дати та часу тощо. Надалі доступ до БД здійснюється по її псевдоніму (імені).

DBD (Database Desktop) – засіб для створення, зміни та перегляду БД. Утиліта орієнтована на роботу з таблицями локальних СУБД.

SQL Monitor – засіб для трасування виконання SQL-запитів.

Visual Query Builder – засіб для автоматичного створення SQL-запитів за зразком методом QBE (Query By Example).

Невізуальні компоненти для роботи з БД (Data Access) – з’єднують додатки з таблицями БД.

Візуальні компоненти для роботи з БД (Data Controls) – візуалізують записи наборів даних (компонент TDBGrid) чи окремих полів поточного запису набору даних (TDBEdit, TDBText). Візуальний компонент з’єднується з невізуальним.


АРХІТЕКТУРА БАЗ ДАНИХ В DELPHI

 

 

Загальний склад засобів, необхідних для роботи готового застосування з БД, а також загальна структура застосування зображені на рисунку 3.

 

 

Рисонок 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

 

 


Практична робота № 1

 

Тема: Створення та реструктуризація бази даних

 

Мета: Виконання основних дій зі створення та модифікації бази даних

 

Завдання:

 

1 Встановити псевдонім локальної бази даних типу Рaradox, використовуючи засоби Database Explorer.

2 Для заданого предметного середовища створити необхідні таблиці за допомогою засобів утиліти Database Desktop. Для кожної таблиці задати обмеження на можливі значення атрибутів. Якщо необхідно, задати значення атрибутів за замовчуванням, та створити необхідні індекси (первинні та вторинні).

3 Реалізувати цілісність посилання між таблицями БД.

4 Використати засоби Database Desktop та Database Explorer для дослідження ключів та індексів у створеній БД.

Примітка: кількість створених таблиць повинна бути не менше трьох.

Обов’язкові засоби: Database Desktop, Database Explorer.

 

Зміст звіту:

 

1 Інфологічна модель бази даних.

2 Робоча структура таблиць з зазначенням атрибутів, що складають первинний та вторинні ключі.

3 Висновки по роботі.

 

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

 

Створення псевдоніму DBE

 

1 Вибрати пункт Explorer головного меню Delphi: Database/Explorer.

2 Клацнути на вкладці Database і на пункті Databases цієї вкладки.

3 Клацнути правою кнопкою миші на пункті Databases і вибрати в контекстному меню, команду New. Це призведе до створення нового шаблону.

4 Вказати драйвер бази даних для нового псевдоніму. Для роботи з СУБД Paradox вибрати Standard і клацнути OK.

5 Ввести ім’я нового псевдоніму і натиснути Enter.

6 В правому вікні ввести шлях до каталогу, в якому буде розміщена БД (параметр Path). Для цього клацнути по полю Path і натиснути на кнопку, що з’явиться в правому кутку поля. Вибрати потрібний каталог і натиснути Ok.

7 Запам’ятати внесені зміни. Для цього натиснути кнопку Apply панелі інструментів Database Explorer (на піктограмі цієї кнопки зображена синя стрілка).

 

Створення таблиць БД

 

1 Запустити утиліту Database Desktop (DBD) з головного меню Delphi: Tools/Database Desktop.

2 Встановити робочий псевдонім: вибрати в меню File / Working Directory, задати псевдонім та натиснути Ok.

3 Для створення таблиць вибираємо File / New / Table. У вікні Create Table вибираємо тип таблиці (Paradox 7) та натискаємо Ok.

4 У вікні визначення структури таблиці кожен рядок відповідає полю таблиці БД. Тут:

– Field Name – ім’я поля;

– Type – тип поля (можливі типи полів наведені в табл. 4);

 

Таблиця 4 – Типи полів

 

Тип поля Позна-чення Значення, що зберігаються
     
Alpha A Символьні значення довжиною до 255 символів.
Number N Числові значення з плаваючою крапкою в діапазоні від -10307 до +10308. Точність до 15 значущих цифр.
Money $ Аналогічний типу Number, але призначений для грошових сум. Число знаків після за замовчуванням – 2. При показі значення виводиться знак грошової одиниці.
Short S Цілочисельні значення в діапазоні -32 767.. 32 767.
LongInteger I Цілочисельні значення в діапазоні -2 147 483 648.. 2 147 483 647.
BCD # Числові значення, у тому числі і дробові, у двійково-десятковому форматі. Забезпечує виняткову точність при роботі з великим числом знаків у дробовій частині. Застосовується в обчисленнях, де важлива точність (фінансові, наукові застосування). Для проведення обчислень потребує більше часу, ніж числові поля інших типів.
Date D Значення дати.
Time T Значення часу.
Timestamp @ Значення дати і часу.
Memo M Текстові значення довжиною більше 255 символів. Максимальна довжина не обмежена. Від 1 до 240 символів можуть зберігатися разом із таблицею БД, а інші зберігаються у виді Memo-файлу (розширення.MB).

Закінчення таблиці 4

 

     
Formatted Memo F Аналогічне мемо-полю, але може зберігати форматовані тексти, у яких фрагменти тексту подані різним шрифтом, кольором і стилями.
Graphic Fields G Графічні зображення у форматі файлів.BMP,.PCX,.TIF,.GIF,.EPS, що при збереженні перетворяться у формат.BMP. Зберігаються окремо від основної таблиці БД.
Logical L Логічні значення ("True", "False"). Регістр літерне має значення.
Autoincre-ment ± Автоінкрементне поле. Значення доступні тільки для читання. Зазвичай це ключове поле в складі первинного ключа. При додаванні нового запису значення поля обчислюється автоматично таким чином, щоб в одній і тій же таблиці не було однакових значень. Значення поля з видалених записів повторно не використовуються.
Binary B Довільні двійкові значення. Повинні інтерпретуватися застосуваннями користувача. DBD не інтерпретує значення цих полів. Зберігаються в окремих від основної таблиці.МВ-файлах. Довжина не визначена.
Bytes Y Довільні двійкові значення, що інтерпретуються застосуваннями користувача, довжиною від 1 до 240 байт. Зберігаються разом із таблицею БД.

 

– Size – розмір поля (для текстових полів);

– Key – включає зірочку ‘*’, якщо поле входить до складу первинного ключа. Це вказує на необхідність створення первинного індексу. Якщо первинний ключ складається з декількох полів, то ці поля вказуються у тій послідовності, в якій вони входять до складу ключа. Усі поля первинного ключа визначаються першими (до визначення інших полів);

– Required Field – прапорець, що вказує на обов’язковість існування значення поля на момент його запам’ятовування у БД;

– Якщо потрібно, вказуємо мінімальне (Minimum Value) та максимальне (Maximum Value) значення поля, а також значення поля за замовчуванням (Default Value);

5 Запам’ятовуємо таблицю, натискаючи кнопку Save As.

Зміна структури таблиці: File / Open / Table / ім’я таблиці і натиснути Ok.

Table / Restructure – внесення змін у структуру таблиці;

Table / Info Structure – інформація про структуру таблиці.

6 Натискаючи F9 переходимо в режим редагування таблиці і можемо вносити дані у таблицю.

 

Визначення цілісності посилання між таблицями БД

 

1 Для визначення цілісності посилання, необхідно відкрити підпорядковану таблицю Student.db і зайти в режим зміни структури таблиці (Table / Restructure). У списку Table Properties вибрати елемент Referential Integrity і натиснути кнопку Define. У вікні, що з’явиться, в списку Fields показані поля підпорядкованої таблиці, а в списку Tables – таблиці робочої бази даних.

2 Вибрати в списку Fields поле GCode (код групи) і натиснути кнопку з зображенням стрілки вправо. Назва буде записана в полі Child Fields (поле зовнішнього ключа підпорядкованої таблиці).

3 Вибрати в списку Tables таблицю Group.db і натиснути кнопку з зображенням стрілки вліво. В полі Parent Key (ключ головної таблиці) будуть показані поля первинного ключа таблиці Group.db.

4 Перемикачі визначають вигляд каскадного впливу на підпорядковану таблицю при зміні чи вилученні значень поля (полів) зв’язку у головній таблиці:

– Cascade – каскадні зміни і вилучення підпорядкованих записів;

– Prohibit – заборона на зміну поля зв’язку чи вилучення записів головної таблиці, якщо для даного запису є пов’язані записи в підпорядкованій таблиці.

5 Оскільки в Paradox цілісність посилання повинна мати ім’я, необхідно у вікні, що з’явиться, ввести назву зв’язку і натиснути ОK. Ім’я створеного зв’язку буде занесено в список.

6 Запам’ятати зміни в таблиці (кнопка Save) і знову зайти в режим реструктуризації таблиці Student.db. У списку Table Properties вибрати елемент Secondary indexes (індекси таблиці, крім індексу, що побудований за визначенням первинного ключа). В списку індексів з’явився новий індекс. Цей індекс автоматично побудовано за неявним визначенням зовнішнього ключа при створенні цілісності посилання.

Приклад: створити базу даних вищого навчального закладу.

 

Спеціальність

 

 

 

Група

 

 

Студент

 

Дисципліна

 

 


Практична робота № 2

 

Тема: Розробка форм для роботи з однією таблицею

Мета: Виконання головних дій по створенню простого застосування.

 

 

Завдання

 

Розробити застосування, що складається з форми для роботи з однією таблицею:

– за допомогою майстра форм Database Form Wizard;

– шляхом перетягування таблиці з Database Explorer;

– вручну з використанням компонентів TTable, TDataSource, TDBGrid.

– вручну з використанням компонентів TTable, TDataSource, TDBEdit, TLabel.

 

Зміст звіту:

 

1 Опис структури таблиці.

2 Опис розробленої форми.

3 Висновки по роботі.

 

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

 



Поделиться:


Последнее изменение этой страницы: 2017-01-25; просмотров: 164; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.118.227.69 (0.09 с.)