![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Справочники.
Данное меню позволяет пользователю просматривать и редактировать основные таблицы базы данных. Загрузка таблиц происходит сразу после успешного соединения с базой данных с помощью процедуры AfterConnect модуля данных. procedure TDataModule1.IBDatabase1AfterConnect (Sender: TObject); begin dsRoute.Active: = True; dsClient.Active: = True; dsPass.Active: = True; dsCountry.Active: =True; dsProfit.Active: =True; qSumDiscount.Active: =true; dsHotel.Active: =True; end; Каждой таблице главного окна соответствует два компонента в DataModule’е: TIBDataSet – служит для непосредственного хранения данных, взятых их таблиц базы данных; TDataSource – служит для обеспечения связи наборов данных с визуальными компонентами Delphi; Для управления записями в таблицах на форме присутствует компонент TDBNavigator. Он позволяет добавлять, удалять или изменять записи в таблицах, а также перемещаться по записям. Для обеспечения этих функций со стороны базы данных для каждого набора данных были написаны запросы на поддержание целостности базы данных (тесты запросов см. Приложение). На вкладке «Справочник стран» предусмотрена такая функция как расчет средней стоимости маршрута в выбранную страну. Для этого из главной формы вызывается процедура модуля данных SrCost. //процедура главной формы procedure TForm2.dbedSrCostChange(Sender: TObject); begin DataModule1.SrCost(lcbCountry.text); end;
//процедура модуля данных procedure TDataModule1.SrCost(countryname: string); begin qSrCost.Active: =False; qSrCost.ParamByName ('CountryName').AsString: =countryname; DataModule1.qSrCost.Active: =True; end; Код SQL-запроса: select avg(PRICE) from ROUTE inner join Country on route.countrycode=country.countrycode where Name=: CountryName Результат выполнения запроса:
|