- •Міністерство освіти і науки, молоді та спорту україни
- •Розглянуто
- •Содержание
- •Практическая работа №1
- •Краткие теоретические сведения Терминология баз данных
- •Ход работы
- •Ход работы
- •Контрольные вопросы:
- •Cодержание отчета
- •Практическая работа №3
- •Краткие теоретические сведения
- •Ход работы
- •Ход работы
- •Ход работы
- •Ход работы
- •Ход работы
- •Ход работы
- •Ход работы
- •Ход работы
- •Контрольные вопросы:
- •Cодержание отчета
- •Рекомендуемая литература
- •Матеріал є власністю Одеського технічного коледжу онахт.
- •Передрук матеріалів тільки з дозволу адміністрації коледжу
Ход работы
Упражнение 10
Разместите на новой форме таблицу (компонент Table; Name – Table1) и источник данных (компонент DataSource; Name – DataSource1).
С
- 35 -
вяжите таблицу с табличным примером ORDERS.DB (свойству DatabaseName таблицы Table1 присвойте значение DBDEMOS, а свойству TableName - значение ORDERS.db) и свяжите источник данных с этой таблицей (свойству Dataset источник данных DataSource1 присвойте значение Table1).Установите свойство Active таблицы Table1 равным True.
Теперь точно так же разместите другую таблицу (компонент Table; Name – Table2) и другой источник данных (компонент DataSource; Name – DataSource2), соединив их с CUSTOMER.DB, и установите свойство Active таблицы Table2 также равным True.
Вы имеете возможность поместить обе таблицы и оба источника данных в модуль данных.
Поместите на форму сетку данных (компонент DBGrid; Name – DBGrid1) и навигатор (компонент DBNavigator; Name – DBNavigator1), связав оба с первым источником данных (их свойству DataSource присвойте значение DataSource1).
Дважды щёлкните на первой таблице, чтобы открыть окно редактора полей Fields Editor.
Внесите в таблицу все поля (см. упр. 5), выберите поле CustNo и установите свойство Visible равным False.
Закройте окно редактора полей Fields Editor.
Расположите на форме комбинированный список выбора данных (компонент DBLookupCombo на странице Win 3.1).
Установите его свойства следующим образом:
Свойство Значение
DataSource DataSource1
DataField CustNo
LookupDisplay Company; CustNo
LookupField CustNo
LookupSource DataSource2
запустите программу.
- 36
-
Вы также можете попробовать в работе новые версии этих компонентов — DBLookupListBox и DBLookupComboBox. Они не обладают возможностью отображать несколько полей, однако их можно напрямую связать с имеющимися в таблице полями поиска.
Упражнение 11
В предыдущем упражнении замените комбинированный список выбора данных (компонент DBLookupCombo) его улучшенной версией (компонент DBLookupComboBox, на странице Data Controls).
Дважды щёлкните на компоненте Table1, с помощью щелчка правой кнопкой мыши на этом же компоненте откройте окно редактора полей Fields Editor и из появившегося меню выберите пункт New field.
В качестве имени поля введите CompanyLook, тип поля установите в String и выберите переключатель Lookup.
Выберите компонент Table2 из списка свойства Dataset и установите свойства Key Fields и Lookup Keys равными имени поля CustNo.
Теперь из списка Result Field выберите поле Company. Щёлкните на кнопке ОК для создания поля выбора.
Перейдите в окно главной формы, установите свойство DataSource компонента DBLookupComboBox равным DataSource1, а свойство DataField — равным CompanyLook. В результате компонент немедленно заполнился данными.
- 37
-
Упражнение 12
Откройте новый проект, выполните команду FileNew, в открывшемся окне выберите Data Module.
Щёлкните на главной форме, выполните команду FileUse unit и укажите модуль данных Unit1.
Теперь из меню Database выберите пункт Explore, в результате чего на экране появится окно Database Explorer (SQL Explorer).
В базе данных DBDemos найдите таблицу EMPLOYEE.DB (DBDemos\Tables\ EMPLOYEE.DB).
Теперь перетащите её из окна Database Explorer в свой модуль данных.
Поместите в окно модуля данных компонент DataSource.
Подключите источник к таблице (установите свойство DataSet компонента DataSource1 в Table1) и установите свойство Active равным True.
Поместите на форму комбинированную сетку данных (компонент DBCtrlGrid) и сделайте её размер примерно соответствующим размеру формы.
Установите её свойство DataSource равным имени (DataModule2.DataSource1) источника данных, находящегося в модуле данных, а свойство RowCount — равным 4.
Поместите на форму навигатор и свяжите его с тем же источником данных.
Вернитесь в окно Database Explorer и раскройте таблицу EMPLOYEE так, чтобы вы видели весь список полей.
Т
- 38 -
еперь по одному перетащите поля из окна Database Explorer в верхнюю часть компонента DBCtrlGrid. При этом каждое опускаемое на сетку поле будет преобразовываться в поле ввода данных и соответствующую надпись.Переместите полученные компоненты таким образом, чтобы занимали две строки в верхней части комбинированной сетки данных.
Запустите программу. Вы увидите, что каждая запись соответствует одному набору компонентов, но при этом сразу можно просматривать четыре записи.
КОНТРОЛЬНЫЕ ВОПРОСЫ:
Чем отличается компонент DBListBox от компонента DВLookupList?
Как открыть Fields Editor и каково его назначение?
Какой компонент характеризует комбинированный список выбора данных?
Для чего нужен компонент DBCtrlGrid?
CОДЕРЖАНИЕ ОТЧЕТА
Выполненная работа включает работающие программы, описанные выше и запускаемые с ПК на рабочем месте. Отчет должен содержать наименование работы, цель, ответы на контрольные вопросы, и выводы по выполненной работе.
- 39
-
ПРАКТИЧЕСКАЯ РАБОТА №8
ТЕМА: Использование запроса для получения результатов баз данных в системе программирования Delphi.
ЦЕЛЬ: Изучить основные свойства компонента Query. Научиться создавать SQL – тренажёр в Delphi, изучить его основные команды
КРАТКИЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ
Базы данных существуют для того, чтобы можно было вводить в них данные и для того, чтобы можно было получать из них информацию. Для этого используется запрос. Запрос (компонент Query) — это другой способ связать вашу Delphi-программу с базой данных. Подобно таблице, он обладает свойствами DatabaseName и Active и нуждается в источнике данных как посреднике для связи с компонентами отображения данных. Если ваша программа открывает запрос, то он получает информацию, определенную командой SQL (Structured Query Language — Язык структурированных запросов), содержащейся в его свойстве SQL. Если вы установили свойство RequestLive равным True, то запрос попытается получить доступ к базе данных таким способом, чтобы результат вернулся назад в базу данных. Это возможно не всегда. Свойство ResultSetLive, действующее только во время работы программы, индицирует его состояние. Если ResultSetLive равно False, значит, запрос предоставил вам копию оригинальных данных.
D
- 40
-
Однако огромным преимуществом является то, что компонент Query вносит в ваши Delphi-программы всё могущество языка SQL. А недостаток заключается в сложности самого языка. (Что еще хуже, так это то, что SQL поставляется во многих разновидностях). Но, на самом деле, вам не нужно изучать этот язык в полном объёме. Вам достаточно обойтись знакомством с несколькими вариациями на тему команды Select. Выполните следующие действия.
