Кафедра: Автоматика и Информационные Технологииосновы разработки приложений баз Данных
ОГЛАВЛЕНИЕ
1.Системы управления базами данных
1.1 Основы баз данных
1.2 Таблицы базы данных
1.3 Средства для работы с базами данных
1.4 Инструментальные средства
1.5 Компоненты
1.6 Технология создания приложения
1.6.1 Создание таблиц базы данных
1.6.2 Создание формы приложения
1.7 Программа BDE Administrator
1.8 Работа с псевдонимами
1.9 Работа со связанными таблицами
2.Задания к лабораторным работам
1. Системыуправления базами данных 1.1 Основы баз данных
Информационныесистемы позволяют автоматизировать сбор и обработку данных. Они являются банкамиданных, включающими:
· вычислительную систему;
· базу данных (БД);
· систему управления базами данных (СУБД);
· набор прикладных программ.
БД обеспечиваетхранение информации и представляет собой совокупность данных, организованных поопределенным правилам. БД позволяет структурировать, хранить и обрабатывать данныеразличного типа.
СУБД –это совокупность языковых и программных средств, предназначенных для создания, веденияи использования БД. Персональная СУБД обеспечивает возможность создания локальныхСУБД. К ним относятся Paradox, DBase, FoxPro, Access. Многопользовательские СУБДпозволяют создавать информационные системы, функционирующие в архитектуре клиент-сервер.К ним относятся Oracle, InterBase, Microsoft SQL Server.
Языковыесредства современных СУБД включают:
· язык описания данных, предназначенный для описания логической структурыданных;
· язык манипулирования данными, обеспечивающий выполнение основных операцийнад данными – ввод, модификацию и выборку;
· структурированный язык запросов (Structure Query Language, SQL), обеспечивающий управлениестандартным средством доступа к удаленным БД;
· язык запросов по образцу (Query By Example, QBE), обеспечивающий визуальноеконструирование запросов к БД.
Прикладныепрограммы, или приложения, служат для обработки данных, содержащихся в БД. Пользовательосуществляет управление БД и работу с ее данными именно с помощью приложения.1.2Таблицы базы данных
БД состоятиз взаимосвязанных таблиц. Таблицы хранятся в файлах. Они похожи на отдельные документыили электронные таблицы. В отличие от документов, таблицы БД поддерживают многопользовательскийрежим, т.е. с ними одновременно могут работать несколько приложений.
ТаблицыParadox являются достаточно развитыми и удобными при создании БД. Основные достоинстватаблиц Paradox:
· имеется много различных типов полей для представления данных;
· поддерживается целостность данных;
· предоставляется возможность организации проверки вводимых данных;
· поддерживается защита таблиц с помощью паролей.
В табл.1 представлен список типов полей таблиц Paradox7.
Таблица 1
Типы полей таблиц Paradox7Тип Обозначения Описание обозначения Alpha A Строка символов. Длина не более 255 символов Number N
Число с плавающей точкой. Диапазон
10-307-– 10308, точность 15 цифр мантиссы Money $ Денежная сумма Short S Целое число. Диапазон -32768 – 32767 LongInteger I
Целое число. Диапазон
-2 0147 0483 648 – 2 147 483 647 BCD # Число в двоично-десятичном формате Date D Дата. Диапазон 01.01.9999 до н.э. – 31.12.2999 Time T Время TimeStamp @ Дата и время Memo M Строка символов. Длина не ограничена. Первые 240 символов хранятся в файле таблицы, остальные в файле с расширением MB
Formatted
Memo F Строка символов. Строка содержит форматированный текст Graphic G Графические изображения. Форматы bmp, pcx, tif, gif и epx Тип Обозначения Описание обозначения OLE O Данные в формате, который поддерживается технологией OLE Logical L
Логическое значение. Допустимые значения
T (Истина) и F (Ложь) Autoincrement A Автоинкрементное поле. При добавлении к таблице новой записи в поле автоматически заносится уникальное значение. При удалении записи значение ее автоинкрементного поля больше не будет использоваться. Значение такого поля допустимо для чтения и обычно используется в качестве ключевого Binary B Последовательность байтов. Длина не ограничена. Байты содержат произвольное двоичное значение Bytes Y Последовательность байтов. Длина не более 255 байт
Имя поляв таблице Paradox должно состоять из букв и цифр и начинаться с букв. Максимальнаядлина имени составляет 25 символов. Ключевые поля должны быть первыми в структуретаблицы.
Для полейможно определить специальный диапазон, в котором должны находиться значения, вводимыев эти поля, а также минимальное и максимальное допустимое значение. Для каждогополя можно задать значение по умолчанию, которое автоматически заносится в полепри добавлении новой записи.
Недостаткомтаблиц Paradox является наличие относительно большого количества файлов, требуемыхдля хранения и содержащихся в таблице. Файлы таблиц имеют следующие расширения:
· DB – таблица с данными;
· MB – BLOB – данные;
· PX – главный индекс(ключ);
· XG? и YG? – вторичныеиндексы;
· VAL – параметры дляпроверки данных и целостности ссылок;
· TV и FAM – форматы вывода таблицы в программеDatabase Desktop.1.3Средства для работы с базами данных
К средствамDelphi, предназначенным для работы с БД, относятся следующие:
· инструментальные средства (специальные программы и пакеты, обеспечивающиеобслуживание БД вне разрабатываемых приложений);
· компоненты, предназначенные для создания приложений, которые осуществляютоперации с БД.1.4.Инструментальные средства
Для операцийс БД система Delphi предлагает такиеинструментальные средства:
· Borland Database Engine (BDE) – процессор баз данных, которыйпредставляет собой набор библиотек, предназначенных для организации доступа к БДиз приложений Delphi;
· BDE Administrator – утилита для настройкиBDE. Позволяет настраивать различные параметры БД;
· Database Desktop – программа для создания и редактированиятаблиц,
SQL- и QBE-запросов;
· SQL Explorer – проводник БД, позволяющий настраиватьпараметры БД.
1.5 Компоненты
Компоненты,связанные с БД, делятся на визуальные и невизуальные:
· невизуальные компоненты служат для организации доступа к данным, содержащимсяв таблицах. Они представляют собой промежуточное звено между данными таблиц БД ивизуальными компонентами;
· визуальные компоненты используются для создания интерфейсной частиприложения. С их помощью пользователь может выполнять такие операции с таблицами,как просмотр или редактирование данных.
На страницеData Access (рис. 1) находятся невизуальные компоненты, с помощью которыхможно организовать доступ к данным:
· Data Source – источникданных;
· Table – набор данных,основанных на таблице БД;
· Query – набор данных,основанных на SQL-запросе;
· StoredProс – набор данных, основанных на процедуре,которая хранится на сервере;
· DataBase – соединениис БД;
· Session – текущийсеанс работы с БД;
· BatchMove – выполнениеопераций над группой записей;
· UpdateSQL – модификациянабора данных, основанного на SQL-запросе;
· NestedTable – вложеннаятаблица.
/>
Рис. 1. Страница Data Access
На страницеData Controls (рис. 2) находятся следующие визуальные компоненты, предназначенныедля управления данными:
· DBGrid – сетка (таблица);
· DBNavigator – навигационный интерфейс;
· DBText – надпись;
· DBEdit – однострочный редактор;
· DBMemo – многострочныйредактор;
· DBImage – графическийобраз;
· DBListBox – простойсписок;
· DBComboBox – комбинированныйсписок;
· DBCheckBox – независимыйпереключатель;
· DBRadioGroup – группанезависимых переключателей;
· DBLookupListBox –простой список, формируемый по полю другого набора данных;
· DBLookupComboBox –комбинированный список, формируемый по полю другого набора данных;
· DBRichEdit – полнофункциональныйтекстовый редактор;
· DBCtrlGrid – модифицированнаясетка;
· DBChart – диаграмма.
/>
Рис. 2. Страница Data Controls 1.6 Технология создания приложения
В качествепримера использования возможностей Delphi для работы с БД рассмотрим технологию создания простого приложения.Основные этапы простого приложения:
· создание таблиц БД;
· создание формы приложения.1.6.1Создание таблиц базы данных
Для работыс таблицами БД при проектировании приложения удобно использовать программу DatabaseDesktop (рис. 3), которая позволяет:
· создавать и изменять структуру таблицы;
· редактировать записи;
· создавать, редактировать и выполнять SQL-запросы;
· создавать, изменять и выполнять запросы по образцу.
/>
Рис. 3. Окно утилиты Database Desktop и диалоговоеокно Create Table
Эту программуможно вызвать из среды Delphi по команде Tool/Database Desktop или путем запускафайла dbd32.exe, находящегося водном каталоге с файлами программы Database Desktop. По умолчанию этот каталог называетсяDatabase Desktop.
Процесссоздания новой таблицы начинается по команде New/Table (Новая/Таблица) и происходитв интерактивном режиме, при этом разработчик должен:
· выбрать тип таблицы;
· задать структуру таблицы;
· указать ключевые поля;
· определить индексы;
· определить ограничения на значения полей;
· определить пароль;
· задать ссылочную целостность (связи) между таблицами.
Обязательныдва первых действия, перечисленные в этом списке. Часть действий, например заданиеключевых полей, применяется только для таблиц определенных типов, например Paradox.
Сначалав окне Create Table (см. рис. 3) выбирается форма таблицы. По умолчанию предлагаетсяформат Paradox 7, который используется в качестве примера.
После выборатипа таблицы появляется окно определения ее структуры (рис. 4), в котором выполняютсявсе остальные действия, при этом нужно задать как минимум одно поле.
Для каждогополя задается имя (в столбце Field Name), тип (в столбце Type) и при необходимостиразмерность (в столбце Size). Можно задать тип поля, непосредственно указав соответствующийсимвол или выбрав из списка (см. рис. 4), раскрываемого после нажатия клавиши или щелчка мыши на столбце с указанием типов. Список содержит все типы полей, допустимыедля заданного формата таблицы.
Для указанияключевых полей в столбце ключа Key нужно ввести символ "*" следующим способом:установить курсор в эту позицию и нажать любую алфавитно-цифровую клавишу. При повторномнажатии клавиши снимается метка о принадлежности поля ключу. Ключевые поля должныбыть в списке первыми, то есть располагаться в окне определения структуры таблицынаверху.
/>
Рис. 4. Окно для определения структуры таблицы
Для выполнениядополнительных действий по определению структуры таблицы используется комбинированныйсписок Table properties (свойства таблицы), содержащий следующие пункты:
· Secondary Index – задание индекса;
· Validity Checks – ограничения на ввод значений полей;
· Password Security – определение пароля;
· Referential Integrity – определение ссылочной целостности между таблицами;
· Table Language – задание языка;
· Table Lookup – задание полей просмотра.
После выбораэтого списка в окне определения структуры таблицы появляются соответствующие элементы,с помощью которых выполняются дальнейшие действия. Как наиболее часто используемоерассмотрим задание индексов.
При выборепункта Secondary Index комбинированного списка становится доступной кнопка Define(определить). После ее нажатия проявляется окно Define Secondary Index (заданиевторичного индекса) (рис. 5). В этом окне задаются индексные поля, отображаемыев правом списке, и параметры индекса, основные из которых изменяются с помощью следующихфлажков:
· Unique – индекс допускает уникальные значения для составляющих егополей;
· Case sensitive – для полей строкового типа учитывается регистр символов;
· Descending – сортировка выполняется в порядке убывания значений.
После заданиясостава индексных полей и нажатия кнопки ОК появляется окно Save Index As, в которомуказывается имя индекса.
/>
Рис. 5. Окно задания индекса
После определенияструктуры таблицы ее необходимо сохранить, нажав кнопку Save as… (сохранить как)и указав расположение таблицы и ее имя на диске.
В последующемструктуру таблицы можно изменить, вызвав команду Table/Restructure… (таблица/изменитьструктуру), которая доступна только для открытой таблицы.1.6.2Создание формы приложения
В качествепримера рассмотрим форму приложения, с помощью которого можно перемещаться по записямтаблицы БД, просматривать и редактировать поля записей, вставлять в таблицу новыезаписи, а также удалять из таблицы записи.
Вид формыприложения представлен на рис. 6. На форме расположены следующие компоненты: Table1,DataSource1, DBGrid1 и DBNavigator1.
/>
Рис. 6. Форма приложения для работы с БД
КомпонентTable1 обеспечивает взаимодействия с БД. Для связи с требуемой таблицей необходимоустановить соответствующие значения свойств DataBaseName, которое указывает путьк БД, и TableName, которое задает имя таблицы. После задания таблицы БД свойствуActive должно быть установлено значение True.
При сменетаблицы перед значением свойств DataBaseName и TableName нужно установить значениеFalse свойству Active.
Имя таблицылучше выбирать из раскрывающегося списка в поле значения свойства TableName. Еслипуть к БД (свойство DataBaseName) задан правильно, в этом списке отображаются вседоступные файлы.
КомпонентDataSourse1 является промежуточным звеном между компонентом Table1, который соединенс реальной таблицей БД, и управляющими компонентами DBGrid1 и DBNavigator1, с помощьюкоторых пользователь взаимодействует с этой таблицей. На компонент Table1, с которым связан компонент DataSourse1,указывает свойство DataSet последнего.
КомпонентDBGrid1 отображает содержимое таблицы БД в виде сетки, в которой столбцы соответствуютполям, а строки – записям. По умолчанию пользователь может просматривать и редактироватьданные. Компонент DBNavigator1 предоставляет возможность перемещаться по таблице,редактировать, вставлять и удалять записи. Компоненты DBGrid1 и DBNavigator1 связываютсясо своим источником данных – компонентом DataSourse1 через свои свойства DataSource.
При разработкеприложения значения всех свойств компонентов можно задать с помощью Инспектора объектов.При этом требуемые значения можно набрать в поле значений или выбрать из раскрывающихсясписков. В табл. 2 приведены компоненты для работы с БД, а также основные свойстваи их значения. В данном примере используется таблица из файла с названием spispe1.db,которая лежит в папке, указанной пользователем. Путь к каталогу указывает псевдонимpimDB.
Таблица 2
Значения свойств компонентовКомпонент Свойства Значения Table1 Active spispe1.db DataBaseName TableName primDB true DataSourse1 DataSet Table1 DBGrid1 DataSource DataSource1 DBNavigator1 DataSource DataSource1
Для автоматизациипроцесса создания формы, использующей компоненты для операции с БД, можно вызватьDatabase Form Wizard (Мастер форм баз данных). Появится окно, представленное нарис. 7. Мастер форм баз данных расположен на странице Business хранилища объектов,доступ к которому осуществляется по команде File/New… (файл/новый).
/>
Рис. 7. Окно Мастера форм баз данных
Мастерформ баз данных позволяет создавать формы для работы с отдельной таблицей и с взаимосвязаннымитаблицами, при этом можно использовать наборы данных Table и Query.1.7Программа BDE Administrator
ПрограммаBDE Administrator представляет собой администратор процессора баз данных BDE. Длявызова администратора BDE запускается файл bdadmin.exe. Администратор позволяетнастраивать параметры БД и системные параметры (операционной системы). Параметрыпсевдонима: название, тип, путь. Параметры драйвера: тип, язык. Системные установки:установки по умолчанию, форматы даты, времени и числовые параметры.
Для настройкинекоторого параметра в левой части окна администратора BDE выбирается нужный объект,после чего в правой части окна становится доступным список параметров этого объекта.Добавить новый объект можно, выбрав в окне администратора пункт меню Object/New(Объект/Новый).1.8Работа с псевдонимами
Псевдоним(alias) указывает на местоположение БД и представляет собой специальное имя дляобозначения каталога.
Для добавлениянового псевдонима перед вызовом пункта меню Object/New администратора нужно выбратьвкладку Database в левой части окна. В диалоговом окне нужно выбрать тип драйвера.Для локальных таблиц Paradox выбирается тип STANDARD.
После нажатиякнопки ОК создается новый псевдоним, и его данные отображаются в окне администратораBDE (рис. 8). Новый псевдоним автоматически получает имя STANDARD1 и параметры поумолчанию.
Псевдонимдля работы с локальными БД имеет следующие три параметра:
· DEFAULT DRIVER – указывает формат таблицы БД;
· ENABLE BCD – указывает на необходимость переводачисел в формат BCD, что позволяет более точно выполнятьчисловые значения, но уменьшает скорость их выполнения;
· PATH – указывает расположение(каталог) БД.
/>
Рис. 8. Установка параметров псевдонимов1.9Работа со связанными таблицами
Между отдельнымитаблицами БД может существовать связь, которая организуется через поля таблиц. Полясвязи обязательно должны быть индексированными. Связь между таблицами определяетотношение подчиненности, при котором одна таблица является главной (родительской),а другая – подчиненной (дочерней или детальной). Обычно используется связь «одинко многим», когда одной записи в главной таблице может соответствовать несколькозаписей в подчиненной таблице.
Для организациисвязи между таблицами в подчиненной таблице используются свойства (в Object Inspector):
· MasterSource – источникданных главной таблицы;
· IndexName – текущий индекс;
· IndexFieldNames –поле или поля связи текущего индекса подчиненной таблицы;
· MasterFields – полеили поля индекса главной таблицы.
Для таблицParadox в качестве полей связи должны использоваться поля главного индекса, а дляподчиненной таблицы – поля вторичного индекса.
Рассмотримпример вывода данных из главной и подчиненной таблиц (рис. 9). Для организации связив качестве поля связи главной таблицы берется автоинкрементное поле Kod уникальногокода. По этому полю построен главный ключ, значение которого автоматически формируетсяпри добавлении новой записи и в пределах таблицы является уникальным. В подчиненнойтаблице полем связи является целочисленное поле KodPe, по которому построен вторичныйиндекс.
/>
Рис. 9. Форма связи между таблицами «одинко многим»
В верхнейчасти формы (см. рис. 9) выводится список всех подвижных единиц (ПЕ), в нижней –сведения о ремонтах выбранной ПЕ. Для наглядности в наборы данных включены все полятаблиц, которые отображаются в компонентах DBGrid. При этом названия заголовковстолбцов совпадают с названиями полей.
В рассмотренномпримере связь между таблицами устанавливается при выполнении приложения. Обычнотаблицы связывают на этапе разработки через Инспектор объектов. При этом для установкисвойства MasterFields можно использовать редактор полей связи (Field link Designer).В списке Detail Fields выбирается поле подчиненной таблицы, а в списке Master Fields– поле главной таблицы (рис. 10).
/>
Рис. 10. Редактор полей связи
После нажатиякнопки Add выбранные поля связываются, что отображается в списке Joined Fields.Заполнение свойства MasterFields происходит после закрытия окна при нажатии кнопкиOK.
В Delphiдля работы с наборами данных таблиц применяются компоненты Table, Query, DecisionQuery и StoredProc.
КомпонентTable представляет набор данных, который в некоторый момент времени может быть связанс одной таблицей БД. Расположение БД, с таблицами которой выполняются операции,указывает свойство DataBaseName типа String (рис. 11). Значением свойства являетсяимя каталога, в котором расположены БД, или псевдоним, ссылающийся на этот каталог.
/>
Рис. 11. Свойства компонента Table в инспекторе объектов
Связь между таблицей и компонентом Table устанавливается через его свойствоTableName типа TFileName, которое определяет имя таблицы (и имя файла, содержащегоданные). По умолчанию в набор данных Table попадают все записи связанной с ним таблицы.Для отбора данных можно использовать фильтрацию.
Для тогочтобы запретить пользователю изменять записи, можно использовать свойство ReadOnlyтипа Boolean. По умолчанию это свойство имеет значение False. Это означает, чтопользователь может редактировать записи.
Установить текущий индекс можно с помощью свойства IndexName типа String. Текущий индекс выбираетсяиз списка индексов, которые были заданы при создании таблицы. На этапе разработкиприложения все возможные значения свойств IndexName содержат раскрывающиеся списки, доступные в Инспекторе объектов.
Наборы данных могут находиться в открытом или закрытом состоянии, на что указываетсвойство Active типа Boolean. Если свойству Active установлено значение True, тонабор данных открыт. Если значение свойства Active равно False (по умолчанию), тонабор данных закрыт и его связь с БД разорвана.
Для вывода содержимого набора данных в табличном виде удобно использоватьсетку, представленную компонентом DBGrid. Внешний вид сетки соответствует внутреннейструктуре таблицы БД и набора данных, при этом строке сетки соответствует запись,а столбцу – поле.
Компонент DataSource – источник данных. Используется как промежуточное звеномежду набором данных и визуальными компонентами, с помощью которых пользовательуправляет этим набором данных. Для указания набора данных, с которым связан источникданных, используется свойство DataSet типа TDataSet последнего. Визуальные компонентысвязаны с источником данных через свои свойства DataSource при проектировании вИнспекторе объектов.2. Задания к лабораторным работам
Вариант 1
1. Спроектировать базу данных в первой, второй и третьей нормальных формахдля ежедневного учета работы водителей в трамвайном депо. Учет ведется на основаниидокумента – путевой лист. В путевом листе содержится следующая информация: дата,маршрут, график, смена, табельный номер водителя, фамилия, время начала работы,время окончания работы, номер вагона, простои на линии. Простои содержат следующуюинформацию: код простоя, начало простоя, окончание простоя. За водителем закрепленномер вагона и номер маршрута. Водитель может работать и на другом вагоне, и надругом маршруте. График содержит: идеальное (по графику) время начала работы, времяокончания работы, номер маршрута, номер смены.
2. Создать запросы, в которых необходимо:
· вывести коды простоев за последний месяц, которые произошли в первуюсмену;
· вывести список водителей, работающих на “своем” и на “другом” маршруте;
· вывести табельные номера водителей, работающих по две смены в день.
3. С помощью запроса создать таблицу “Опасные маршруты”, содержащую списокмаршрутов, у которых за последний месяц были простои по вине дорожно-транспортныхпроисшествий.
4. В путевом листе измените поле “Дата”, проставив текущую дату для маршрута№ 2.
5. Определить, сколько простоев было по кодам простоя за последний месяц накаждом маршруте.
6. Вывести информацию о всех графиках для любого маршрута, заданного пользователемв режиме диалога.
7. Создать формы для ввода справочной информации (о водителе, маршруте, вагонах,простоях, графиках для каждого маршрута), а также текущей информации для путевоголиста.
8. Создать многотабличную форму с помощью Мастера форм. Главная форма – путевойлист, подчиненная – информация о простоях.
9. С помощью Мастера отчетов создать отчет на основе таблицы “Путевой лист”,сгруппировав данные по табельному номеру водителя. Вывести дату, номер маршрута,номер графика, номер смены, номер вагона, реальное время начала и окончания работы.Отсортировать данные по дате.
Вариант 2
1. Спроектировать базу данных в первой, второй и третьей нормальных формахдля организации компьютерного учета перемещения узлов трамвая в ходе ремонтов. Внакладной необходимо учитывать следующую информацию: номер трамвая, номер узла,дату установки узла на трамвай, дату снятия узла с трамвая, причину снятия узла,фамилию слесаря, получившего задание. Для слесаря определенной квалификации оформляютсяотдельно две накладные (для снятия или установки узлов вагона).
2. Создать запросы, в которых необходимо:
· вывести номера вагонов, в которых за последний месяц устанавливалиодин тип узла, например колесную пару;
· вывести номера узлов, которые были установлены и сняты в течение последнегоквартала.
3. С помощью запроса создать таблицу ”Часто заменяемые узлы”, в которой вывестисписок названий узлов, снятых с вагона по причине, например, перегорания предохранителейв течение последнего квартала.
4. Обновить информацию о слесаре, который снимал детали по причине перегоранияпредохранителей, например: 01.01.2006.
5. Определить, сколько было замен узлов за определенный период на каждом вагоне.
6. Вывести информацию о всех вагонах, в которых произошли замены любого узла,заданного пользователем в режиме диалога.
7. Создать формы для ввода справочной информации (о вагоне, узле, слесаре,причинах замены узлов), а также текущей информации по накладной для установки узлана вагон и накладной для снятия узла с вагона.
8. Создать многотабличную форму с помощью Мастера форм. Главная форма – накладнаядля установки узла на вагон. Подчиненная – накладная для снятия узла с вагона.
9. С помощью Мастера отчетов создать отчет на основе таблицы “Накладная дляустановки узла на вагон”, сгруппировав данные по номеру вагона. Вывести номер узла,дату установки узла. Отсортировать данные по номеру узла.
Вариант 3
1. Спроектировать базу данных в первой, второй и третьей нормальных формахдля учета расхода электроэнергии в трамвайном управлении. На предприятии имеетсятри подстанции. На каждой подстанции стоит по три электросчетчика. Каждый счетчикфиксирует показания соответствующего участка. Ежемесячно работник предприятия долженотчитаться в показаниях счетчика и рассчитать расход электроэнергии в денежном выражении.С 23.00 до 6.00 действует ночной тариф, также существуют выходной (суббота, воскресенье)и праздничный тарифы. Показания всех счетчиков фиксируются при смене тарифа.
2. Создать запросы, в которых необходимо:
· вывести количество электроэнергии, которое потребила подстанция “Южная”в ночное время за последний месяц;
· вывести дату, когда показания счетчика не менялись, например в случаеаварии на подстанции.
3. С помощью запроса создать таблицу “Наиболее потребляемые участки”, в которойбудет список участков, где потребление электроэнергии за последний месяц в дневноевремя суток составило более 1000 кВт.
4. Увеличить цену тарифа на 20 % для дневного тарифа.
5. Определить количество потраченной электроэнергии на каждом участке за последниймесяц. Сгруппировать по тарифам.
6. Вывести информацию о тарифах (название, время действия, цена), заданныхпользователем в режиме диалога.
7. Создать формы для ввода справочной информации (о подстанции, счетчиках,тарифах), а также текущей информации для учета электроэнергии.
8. Создать многотабличную форму с помощью Мастера форм. Главная форма – учетнаякарточка электроэнергии, подчиненная – информация о тарифах.
9. С помощью Мастера отчетов создать отчет на основе таблицы “Учетная карточка”,сгруппировав данные по номеру счетчика, тарифу. Вывести дату, время, показания счетчика.Вычислить количество электроэнергии, потребляемой по каждому тарифу.
Вариант 4
1. Спроектировать базу данных в первой, второй и третьей нормальных формахдля учета перемещения комплектующих деталей компьютеров на предприятии: инвентарныйномер компьютера, название и номер комплектующей детали, дата установки, рабочееместо. Предприятие имеет несколько отделов, в каждом отделе несколько рабочих мест.Должности работников в разных отделах могут быть одинаковыми.
2. Создать запросы, в которых необходимо:
· вывести инвентарный номер и наименование ПК, на которые за последниймесяц установили один тип комплектующих деталей, например CDROM;
· вывести список работников, на ПК которых устанавливались комплектующиедетали в последний месяц.
3. С помощью запроса создать таблицу ‘‘Комплектующие детали для директора’’,в которой был список комплектующих деталей, установленных на ПК директора за последниймесяц.
4. Для комплектующих деталей типа CDROM обновить наименование ’’Устройстводля чтения компакт-дисков’’.
5. Определить, сколько рабочих мест в каждом отделе было модернизировано (установленыкомплектующие детали) за последний год.
6. Вывести информацию об установках комплектующих деталей на ПК с указаниемрабочего места для любого сотрудника, ФИО работника задается в режиме диалога.
7. Создать формы для ввода справочной информации (об отделах предприятия,рабочих местах, компьютерах, комплектующих деталях), а также текущей информациидля накладной по установке деталей на ПК.
8. Создать многотабличную форму с помощью Мастера форм. Главная форма – накладнаядля установки деталей на ПК. Подчиненная форма – наличие комплектующих деталей наданном ПК.
9. С помощью Мастера отчетов создать отчет на основе таблицы ‘‘Накладная дляустановки КД’’, сгруппировав данные по инвентарному номеру ПК. Вывести комплектующиедетали, дату установки КД, Отсортировать данные по номеру комплектующих деталей.
Вариант 5
1. Спроектировать базу данных в первой, второй и третьей нормальных формахдля учета поступающих заявок от линейных работников на устранение неисправностив трамвае на транспортном предприятии. В базу данных входят: дата и время подачизаявки, характер неисправности, кто передал заявку, время получения заявки, комупередана заявка на исполнение. Если неисправность не устранена, то указать причину.Заявку подает водитель или кондуктор трамвая. Принимает заявку слесарь, ремонтник,электрик.
2. Создать запросы, в которых необходимо:
· вывести номера вагонов, в которых за последний месяц устранял неисправностиодин и тот же работник, например Петров;
· вывести список исполнителей с указанием их работы (номер вагона, характернеисправности, причина устранения неисправности) за последний месяц;
· вывести номера заявок, даты заявок, когда исполнили (сразу получилизаявку, по мере ее поступления).
3. С помощью запроса создать таблицу ‘‘Неисправность – сломанные двери’’,в которой будет список вагонов и наименование причины неустранения заявки, еслив течение последнего квартала была неисправность “сломанная дверь”.
4. Обновить в заявке поле “дата” на текущую дату для исполнителя “Сидоров”.
5. Определить, сколько было заявок каждого типа неисправности за определенныйпериод для каждого вагона.
6. Вывести информацию о всех исполнителях, которые устраняют определенныенеисправности, заданные пользователем в режиме диалога.
7. Создать формы для ввода справочной информации (о характере неисправности,работниках, делающих заявки, исполнителях, причинах неустранения неисправностей,вагонах), а также текущей информации для заявки на устранение неисправности.
8. Создать многотабличную форму с помощью Мастера форм. Главная форма – заявкана устранение неисправности, подчиненная – информация о характере неисправностина данном вагоне (устраненной или нет) в течение последнего года.
9. С помощью Мастера отчетов создать отчет на основе таблицы “Заявка на устранениенеисправности”, сгруппировав данные по номеру вагона. Вывести дату заявки, характернеисправности, исполнителя, причину неустранения заявки. Отсортировать данные потипу заявки.
Вариант 6
1. Спроектировать базу данных в первой, второй и третьей нормальных формахдля учета рабочего времени сотрудников, т.е. организовать табель рабочего времени.Необходимо организовать учет следующих данных: табельный номер сотрудника, фамилия,имя, отчество, дата и время работы, причина невыхода на работу, адресные данныесотрудников, телефон, возраст, стаж работы. Также необходимо проводить поверку соответствиярежима работы каждого сотрудника его индивидуальному графику работы.
2. Создать запросы, в которых необходимо:
· вывести список сотрудников, которые не вышли на работу по причинеотгулов за последний месяц;
· вывести список сотрудников, указав, в каком режиме они работали
10-го числа последнего месяца;
· вывести список сотрудников, у которых поменялся режим работы.
3. С помощью запроса создать таблицу “Болеющие сотрудники”, содержащую списоксотрудников, которые в последний месяц не выходили на работу по причине болезни.
4. Для ночных смен обновить время режима работы с 12 на 10 часов.
5. Определить, сколько времени работал каждый сотрудник в последнем месяце.
6. Вывести информацию о сотрудниках (табельный номер, ФИО, адрес, режим работы),которые за последний год, например, не выходили на работу. Причина невыхода на работузадается в режиме диалога.
7. Создать формы для ввода справочной информации (о сотрудниках, режимах работы,причинах невыхода на работу), а также текущей информации для заполнения табельноголиста.
8. Создать многотабличную форму с помощью Мастера форм. Главная форма – табельныйлист, подчиненная – сведения о сотруднике.
9. С помощью Мастера отчетов создать отчет на основе таблицы “Табельный лист”,сгруппировав данные по табельному номеру водителя. Вывести дату, режим работы, времярежима работы, время работы (реальное), причину невыхода на работу (если таковаяесть). Отсортировать данные по дате.
Вариант 7
1. Спроектировать базу данных в первой, второй и третьей нормальных формахдля ежедневного учета движения библиотечного фонда: автор и название книги, годиздания, фамилия читателя, причина отсутствия книги в библиотеке. Книги необходимоучитывать по категориям. Читательская карточка должна содержать: фамилию, адрес,место работы, телефон рабочий, телефон домашний. В случае задержки книги читателемпринимаются меры, которые фиксируются в читательской карточке.
2. Создать запросы, в которых необходимо:
· вывести список книг (авторы, название, год издания) категории “детективы”,которые заказывали читатели за последний месяц;
· вывести список читателей, заказавших книги в прошлом месяце. Указать,возвратили или нет книгу;
· вывести список книг, которые запрашивал читальный зал (т.е. дата возвратасоответствует дате заказа) в последний месяц.
3. С помощью запроса создать таблицу “Злостные должники”, в которой указатьсписок читателей (ФИО, адрес, телефон), которые не сдали книги после второго телефонногозвонка.
4. Присвоить читателю имя “должник“, если книга не возвращена на следующийдень после установленной даты возврата.
5. Определить, сколько должников не вернули книги каждой категории.
6. Вывести список возвращенных книг (авторы, название книги, год издания).Дата возврата книги задается пользователем в режиме диалога.
7. Создать формы для ввода справочной информации (о категориях книг, книгах,читателе, мерах, принимаемых к должникам), а также текущей информации “Заказ читателя”,“Возврат книги”.
8. Создать многотабличную форму с помощью Мастера форм. Главная форма – заказчитателя, подчиненная – возврат книги.
9. С помощью Мастера отчетов создать отчет на основе таблицы “Заказ читателя”,сгруппировав категории книг. Вывести дату заказа, ФИО читателя, автора, названиекниги, год издания. Отсортировать данные по ФИО читателя.
Вариант 8
1. Спроектировать базу данных в первой, второй и третьей нормальных формахдля ежедневного учета посещений врачей любой квалификации в поликлинике. В больничнойкарточке указывается: дата приема, фамилия, имя и отчество больного, возраст, адрес,ФИО врача, поставленный диагноз, назначенная процедура, номер больничного, датаоткрытия и закрытия больничного.
2. Создать запросы, в которых необходимо:
· вывести список больных, посетивших педиатра за последний месяц с диагнозомОРЗ;
· вывести список больных и процедур, назначаемых им или нет за последниймесяц;
· вывести номера больничных листов, которые были закрыты в день их открытия.
3. С помощь запроса создать таблицу “Возможная эпидемия”, содержащую списокбольных, которые за последнюю неделю заболели гриппом.
4. Для больных с диагнозом ОРЗ и датой открытия больничного листа недельнойдавности закрыть больничный лист.
5. Определить, сколько больных в возрасте от 40 до 50 лет были на больничномв течение года с одинаковыми диагнозами.
6. Вывести информацию о всех больных, которых принимал врач. ФИО врача задаетсяпользователем в режиме диалога.
7. Создать формы для ввода справочной информации (о враче, квалификации врача,больных, диагнозах, процедурах), а также текущей информации для больничной карточки.
8. Создать многотабличную форму с помощью Мастера форм. Главная форма – больничнаякарточка, подчиненная – регистрация больничного листа.
9. С помощью Мастера отчетов создать отчет на основе таблицы “Больничная карточка”,сгруппировав данные по ФИО врача. Вывести дату приема, ФИО больного, процедуры.Отсортировать данные по ФИО больного.
Вариант 9
1. Спроектировать базу данных в первой, второй и третьей нормальных формахдля учета движения компьютерной техники на предприятии. Закрепить за каждым рабочимместом необходимое количество компьютерной техники. Присвоить каждой единице компьютернойтехники инвентарный номер и учитывать ее перемещение по рабочим местам с указаниемдаты и фамилии электронщика, осуществившего перестановку или списание на склад.
2. Создать запросы, в которых необходимо:
· вывести список рабочих мест, с которых в течение последнего года списаликомпьютерную технику одного вида, например принтеры;
· вывести список электронщиков с указанием выполненной ими работы втечение последнего месяца.
3. С помощью запроса создать таблицу “Работники с новой компьютерной техникой”,где необходимо вывести список сотрудников, которым в последний месяц установилиновые мониторы.
4. Переименовать вид компьютерной техники “Ксерокс” на “Копировальный аппарат”.
5. Определить, сколько техники по видам было списано каждым электронщикомв течение последнего года.
6. Вывести информацию о компьютерной технике, которая принадлежит определенномуработнику, ФИО работника задается в режиме диалога.
7. Создать формы для ввода справочной информации (о рабочих местах, компьютернойтехнике, виде компьютерной техники, электронщиках), а также текущей информации длязаявки на перемещение компьютерной техники.
8. Создать многотабличную форму с помощью Мастера форм. Главная форма – заявкана перемещение компьютерной техники, подчиненная – информация о рабочих местах (откудаи куда будет перемещаться компьютерная техника).
9. С помощью Мастера отчетов создать отчет на основе таблицы “Заявка на перемещениекомпьютерной техники”, сгруппировав данные по новому рабочему месту, куда перемещенакомпьютерная техника. Вывести дату заявки, перемещаемую компьютерную технику, электронщика.Отсортировать данные по дате.
Вариант 10
1. Спроектировать базу данных в первой, второй и третьей нормальных формахдля учета ДТП в городе для ГАИ. Рассмотреть ДТП, когда автомобиль сбивает пешехода.При организации учета ДТП необходимо заносить данные: дата, время, ФИО шофера, ФИОпешехода, ФИО свидетелей, тяжесть последствий (без травм, легкая, тяжелая травма,смертельный случай), виновность участников ДТП, адреса участников ДТП.
2. Создать запросы, в которых необходимо:
· вывести информацию о машинах, которые за последний месяц сбили пешеходана перекрестке Ленина-Луначарского;
· вывести список свидетелей аварий, которые происходили накануне и закончилисьтяжелой травмой для пешехода;
· вывести номера аварий, у которых не менее двух свидетелей.
3. С помощью запроса создать таблицу “Опасные перекрестки”, содержащую списокперекрестков, на которых за последний месяц произошли аварии одного типа, напримерсбит пешеход по вине неработающего светофора.
4. Изменить адрес водителей: Свердловск на Екатеринбург.
5. Определить, сколько аварий было по видам виновности участников ДТП за последнийгод.
6. Вывести информацию о пострадавших в зависимости от тяжести последствия,заданной пользователем в режиме диалога.
7. Создать формы для ввода справочной информации с помощью Мастера форм посправочникам: о машине, пострадавших, виновности, тяжести последствия, свидетелях.Создать форму “Учет ДТП”.
8. Создать многотабличную форму с помощью Мастера форм. Главная форма – учетнаякарточка ДТП, подчиненная форма – информация о свидетелях.
9. С помощью Мастера отчетов создать отчет на основе таблицы “Учет ДТП”, сгруппировавданные по виновности участников ДТП. Вывести дату аварии, номер машины, ФИО водителя,ФИО пострадавшего, место аварии, тяжести последствия ДТП. Отсортировать данные постепени последствия ДТП.
Вариант 11
1. Спроектировать базу данных в первой, второй и третьей нормальных формахдля диспетчера сети аптек. Должны быть указаны адрес аптеки, телефон, специализацияаптеки. Информация о лекарствах: наименование лекарств, их характеристика – от какихзаболеваний, доза в упаковке, доза применения, расфасовка. Информация о наличиилекарств должна содержать: дату поступления, количество упаковок лекарства, цену,название завода-изготовителя, дату продажи последней упаковки лекарства.
2. Создать запросы, в которых необходимо:
· вывести информацию об аптеках, которые закупают лекарства в Венгрии;
· вывести информацию о том, в каких аптеках имеется в продаже анальгини в каких количествах;
· вывести лекарства, на которые не устанавливается НДС.
3. С помощью запроса создать таблицу “Наиболее дорогие лекарства”, содержащуюсписок лекарств от эпилепсии, которые закупали аптеки в последний год при цене заупаковку более 1000 р.
4. Увеличить на 5 % цену продажи лекарств, поступивших в аптеку за последнююнеделю.
5. Определить сумму, которую затратила каждая аптека при покупке лекарствот гриппа за последний год.
6. Вывести информацию о лекарствах, которые покупали за последний год в зависимостиот заболевания, заданного пользователем в режиме диалога.
7. Создать формы для ввода справочной информации (об аптеках, лекарствах,заболеваниях), а также текущей информации о поступлении лекарств в аптеки.
8. Создать многотабличную форму с помощью Мастера форм. Главная форма – поступлениелекарств в аптеки, подчиненная форма – розничная продажа лекарств.
9. С помощью Мастера отчетов создать отчет на основе таблицы “Поступлениелекарств в аптеки”, сгруппировав данные по номерам аптек. Вывести дату поступлениялекарств, количество упаковок, цену упаковки, цену продажи. Отсортировать данныепо наименованию лекарств.
Вариант 12
1. Спроектировать базу данных в первой, второй и третьей нормальных формахдля диспетчера телефонной сети в городе. Должны быть указаны: номер телефона, списокабонентов, адрес абонента. Информация об АТС: номер АТС, ее адрес, телефон ремонтнойслужбы, характеристика АТС. Диспетчер должен знать, какой номер неисправен, датуи время заявки абонента, дату и время устранения неисправности. Для оформления заявкитакже необходимы следующие сведения: какой мастер будет выполнять ремонт, характержалобы абонента, характер неисправности.
2. Создать запросы, в которых необходимо:
· вывести номера телефонов, в которых за последний месяц устранили однуи ту же неисправность, например заменили номеронабиратель;
· вывести номера телефонов, не исправных и отремонтированных в течениепоследнего месяца;
· вывести номера телефонов, которые в течение последнего месяца неоднократноподавали заявки на ремонт.
3. С помощью запроса создать таблицу ”Возможный обрыв кабеля”, в которой указатьномера телефонов и адреса абонентов, от которых поступили за последние сутки заявкис жалобой: отсутствие зуммера.
4. При установке цифрового оборудования необходимо для части номеров, а именнос 0001 до 4999, перевести номер АТС с 51 на 72.
5. Определить, сколько неисправностей каждого типа было устранено на каждойАТС за последний месяц.
6. Вывести информацию об абонентах, которых за последний год обслуживал мастер,фамилия которого задана в режиме диалога.
7. Создать формы для ввода справочной информации (об АТС, абонентах, Мастерах,характере жалоб абонента, характере неисправностей), а также текущей информациио заявках на устранение неисправностей.
8. Создать многотабличную форму с помощью Мастера форм. Главная форма – заявкана устранение неисправностей, подчиненная форма – информация об абоненте.
9. С помощью Мастера отчетов создать отчет на основе таблицы “Заявка на устранениенеисправностей”, сгруппировав данные по АТС. Вывести номер телефона, дату и времязаявки от абонента, характер жалобы, ФИО мастера. Отсортировать данные по характеружалобы.
Вариант 13
1. Спроектировать базу данных в первой, второй и третьей нормальных формахдля диспетчера технического обслуживания сети кафе. Информация о кафе следующая:название кафе, адреса кафе, ФИО директора, телефон кафе, наличие технического оборудования(холодильник, печь, миксер, кофеварка и др.). В случае поломки оборудования оформляетсязаявка, в которой указывается дата поломки оборудования, дата ремонта, его характер(быстрый ремонт, ремонт со сменой деталей, замена оборудования на новое). Ремонтникможет иметь определенную квалификацию и соответственно ремонтирует только определенныйтип оборудования (холодильные установки, электрооборудование и др.).
2. Создать запросы, в которых необходимо:
· вывести информацию о кафе, в которых за последний год ремонтировалосьэлектрооборудование и какое именно;
· вывести информацию о кафе, в которых установлены миксеры и были илинет заявки на их ремонт;
· вывести информацию о работниках, которые ремонтировали оборудованиев день заявки, указать характер ремонта.
3. С помощью запроса создать таблицу “Новое оборудование”, где указать, вкаких кафе за последний год заменили оборудование в связи с его поломкой.
4. Для всех вчерашних заявок установить сегодняшнюю дату ремонта.
5. Определить, сколько ремонтов по каждому типу оборудования было произведеноза последний год в каждом кафе.
6. Вывести информацию о ремонтниках, которые ремонтировали оборудование запоследний год в кафе, название которого было задано в режиме диалога.
7. Создать формы для ввода справочной информации (о кафе, оборудовании, типахоборудования, характере ремонта), а также текущей информации для заявки на ремонтоборудования.
8. Создать многотабличную форму с помощью Мастера форм. Главная форма – заявкана ремонт оборудования, подчиненная форма – информация о кафе и оборудовании в нем.
9. С помощью Мастера отчетов создать отчет на основе таблицы “Заявка на ремонтоборудования”, сгруппировав данные по кафе. Вывести дату заявки, дату ремонта, ремонтируемоеоборудование. Отсортировать данные по характеру ремонта.
Вариант 14
1. Спроектировать базу данных в первой, второй и третьей нормальных формахдля учета наличия корма в зоопарке. Информация о животных следующая: название, вид,пол, количество. Рацион питания составляется в зависимости от вида и пола животного.Пусть каждое животное кормят один раз в день, животному полагается как минимум два-тривида пищи за раз. Время кормления каждого вида животного различное.
2. Создать запросы, в которых необходимо:
· вывести список животных (вид, пол, количество), у которых в последнеммесяце было усиленное питание;
· вывести список продуктов с указанием количества и даты приема.
3. С помощью запроса создать таблицу “Самки-хищницы на витаминном питании”,содержащую список животных (самок-хищников), которые в последний месяц находятсяна витаминном питании.
4. Увеличить на 20 % количество выдаваемых продуктов, калорийность которыхвыше 500 ккал, для животных, находящихся на усиленном питании.
5. Определить, сколько килограммов каждого продукта за последний месяц былосъедено каждый животным.
6. Вывести информацию о животных и выданных им продуктах в указанное в режимедиалога время.
7. Создать формы для ввода справочной информации (о видах животных, поле животных,рационе, продуктах питания), а также текущей информации о приеме пищи животными.
8. Создать многотабличную форму с помощью Мастера форм. Главная форма – приемпищи животными, подчиненная форма – информация о животных.
9. С помощью Мастера отчетов создать отчет на основе таблицы “Прием пищи животными”,сгруппировав данные по рациону. Вывести дату, время кормления животного, названиеживотного, название продуктов, количество продуктов. Отсортировать данные по животному.
Вариант 15
1. Спроектировать базу данных в первой, второй и третьей нормальных формахдля ежедневного учета изготовленных деталей и отправки готовых деталей на складе.Определенная деталь выпускается слесарем конкретной квалификации и разряда. Детальимеет определенную сложность и может изготавливаться не один день. Слесарь можетизготавливать деталь при наличии квалификации не ниже требуемой.
2. Создать запросы, в которых необходимо:
· вывести список деталей высокой сложности, изготовленных в течениепоследнего месяца, если работу выполняли слесари с разрядом с 7 по 9;
· вывести список слесарей 3 разряда, которые в течение последнего месяцаизготовляли или нет детали пониженной сложности;
· вывести список табельных номеров слесарей, которые в течение месяцаизготовляли детали за один день.
3. С помощью запроса создать таблицу “Ученики”, в которой детали повышеннойсложности выполняли слесари, чья квалификация ниже требуемой для изготовления данныхдеталей.
4. В заявке на изготовление сложных деталей, которые были заказаны сегодня,обновить дату окончания изготовления деталей на завтрашнюю.
5. Определить, сколько деталей каждой сложности было изготовлено каждым слесаремв течение последнего квартала.
6. Вывести информацию о слесарях, в течение последнего месяца изготовившихдетали, название которых задано пользователем в режиме диалога.
7. Создать формы для ввода справочной информации (о слесаре, его квалификации,деталях, их сложности), а также текущей информации о заявке на изготовление детали.
8. Создать многотабличную форму с помощью Мастера форм. Главная форма – заявкана изготовление детали, подчиненная форма – информация о слесаре.
9. С помощью Мастера отчетов создать отчет на основе таблицы “Заявка на изготовлениедетали”, сгруппировав данные по сложности детали. Вывести дату заявки, дату изготовлениядетали, информацию о слесаре, который ее изготовил. Отсортировать данные по табельномуномеру слесаря.
Вариант 16
1. Спроектировать базу данных в первой, второй и третьей нормальных формахдля заказа билета в самолете, в которой указать дату и время заказа билета, рейс,место, дату и время отправления, дату и время прилета, ФИО пассажира, номер паспорта,цену билета. Рейс может быть международным, местным, чартерным, регулярным. Числомест в самолете зависит от модели самолета.
2. Создать запросы, в которых необходимо:
· вывести список пассажиров, заказавших билеты вчера на завтрашние рейсыв Москву;
· вывести список пассажиров, заказавших билеты в день отлета.
3. С помощью запроса создать таблицу “Чартерные рейсы”, в которой указатьсписок пассажиров, отлетающих сегодня на чартерных рейсах на ТУ-154.
4. Обновить цену билетов, увеличив ее на 20 % с 1 числа следующего месяца.
5. Определить, сколько было заказано билетов по категориям рейсов за последниймесяц.
6. Вывести информацию о рейсах, отправляющихся в ближайший месяц в город,который задан пользователем в режиме диалога.
7. Создать формы для ввода справочной информации (о номерах самолетов, моделяхсамолетов, рейсах, категории рейсов, пассажирах), а также текущей информации о заказахбилетов.
8. Создать многотабличную форму с помощью Мастера форм. Главная форма – заказбилетов, подчиненная форма – информация о рейсе.
9. С помощью Мастера отчетов создать отчет на основе таблицы “Заказ билетов”,сгруппировав данные по категории рейсов. Вывести дату и время заказа, дату и времяотлета, дату и время прилета, ФИО пассажира. Отсортировать данные по категориямрейсам.
Вариант 17
1. Спроектировать базу данных в первой, второй и третьей нормальных формахдля определения рейтинга канала с помощью анкетирования. В анкете указывается номерканала, название канала, характеристика (метровый, дециметровый), название передачи,вид передачи (новости, телесериал, спортивная, развлекательная или познавательнаяпередача), рейтинг (с 1 до 10), время показа, день недели показа. Рейтинг передачиопределяется по семибальной шкале.
2. Создать запросы, в которых необходимо:
· вывести список познавательных передач, транслирующихся по вторникам,с рейтингом не ниже 3, с указанием номера канала, времени показа по вторникам;
· вывести список познавательных передач, вошедших или нет в анкеты опрашиваемых,с указанием рейтинга;
· вывести список номеров каналов, которые смотрят в зависимости от днянедели, т.е. передачи с наивысшим рейтингом данного дня недели.
3. С помощью запроса создать таблицу “Наивысший рейтинг I канала”, где вывестивсе передачи первого канала, которые по анкетам заняли наивысший рейтинг, с указаниемдня недели и времени показа.
4. Обновить время начала и время окончания для передачи “Вести” по каналуРТР с 20.00 на 20.30.
5. Определить рейтинг каналов по видам передач.
6. Вывести список передач, занимающих последнее место, которые показываютв диапазоне частот (метровом или дециметровом), заданном пользователем в режимедиалога.
7. Создать формы для ввода справочной информации (о каналах, характеристикахканалов, передачах, видах передач, рейтинге), а также текущей информации для анкеты.
8. Создать многотабличную форму с помощью Мастера форм. Главная форма – анкета,подчиненная форма – информация о передачах анкетируемого канала.
9. С помощью Мастера отчетов создать отчет на основе таблицы “Анкета”, сгруппировавданные по каналам. Вывести название передач, время показа, день недели показа, рейтинг.Отсортировать передачи по рейтингу и определить рейтинг каждого канала.
Вариант 18
1. Спроектировать базу данных в первой, второй и третьей нормальных формахдля учета фондов в музее. Экспонаты музея классифицируются по видам (мебель, скульптура,книги, сувениры). Каждый зал музея имеет название, номер. Каждый экспонат имеетсвой инвентарный номер, известна дата поступления в музей, кто передал экспонат(организация или частное лицо), как (на благотворительной основе или музей приобреталза деньги), историческая ценность экспоната. Указать, выставлен ли экспонат в залахили находится в запасниках. Регистрируется дата последней реставрации, срок выставочнойэкспозиции до следующей реставрации.
2. Создать запросы, в которых необходимо:
· вывести список и определить ценность скульптур, находящихся в запаснике,которые необходимо будет реставрировать в следующем году;
· вывести данные о физических лицах, которые продали или передали музеюэкспонаты;
· вывести список экспонатов, которые в последний год музей прибрел заденьги, причем цена приобретения соответствовала ценности экспоната.
3. С помощью запроса создать таблицу “Меценаты”, содержащую список лиц (физическихили юридических), которые безвозмездно передали музею экспонаты, ценность которыхболее 10 тыс. рублей.
4. Обновить срок следующей реставрации, заменив его на 2008 год, для мебели,которая реставрировалась в 1998 году.
5. Определить, сколько экспонатов по видам находится в запасниках и на какуюсумму ценности.
6. Вывести список экспонатов ценностью выше 5 тыс. рублей, находящихся в зале,который задан пользователем в режиме диалога.
7. Создать формы для ввода справочной информации (о залах, видах экспонатов,физических и юридических лицах, которые передавали экспонаты музею, о форме приобретенияэкспоната), а также текущей информации о фонде музея.
8. Создать многотабличную форму с помощью Мастера форм. Главная форма – фондмузея, подчиненная форма – информация о лице, передавшем экспонат.
9. С помощью Мастера отчетов создать отчет на основе таблицы “Фонд музея”,сгруппировав экспонаты по залам. Вывести название экспоната, ценность, дату последнейреставрации. Отсортировать данные по ценности экспоната. Определить ценность экспонатовв каждом зале и общую ценность всего фонда музея.
Вариант 19
1. Спроектировать базу данных в первой, второй и третьей нормальных формахдля учета больных в санатории. Карточка больного содержит следующие данные: ФИО,возраст, пол, основной диагноз, откуда приехал, на какой срок, категория путевки(одно- или двухместный номер), ФИО лечащего врача, список и даты посещения назначенныхпроцедур.
2. Создать запросы, в которых необходимо:
· вывести список больных пенсионного возраста с диагнозом ожирение,посетивших бассейн на последней неделе;
· вывести список больных женщин с диагнозом гипертония, приехавших всанаторий неделю назад и выполняющих или нет ЛФК;
· вывести список больных, которые отдыхали в санатории один день.
3. С помощью запроса создать таблицу “Приехавшие вчера”, содержащую списокбольных, которые заехали в санаторий вчера в одноместные номера, лечащий врач которыхневропатолог.
4. Продлить время отдыха больных, проживающих в № 321 на одну неделю.
5. Определить, сколько больных по каждому диагнозу было принято в санаторииза последний год.
6. Вывести информацию о посещении процедур больным, фамилия которого заданапользователем в режиме диалога.
7. Создать формы для ввода справочной информации (о врачах, их квалификации,диагнозе больных, процедурах, номерах санатория), а также текущей информации длябольничной карты о посещении процедур больными.
8. Создать многотабличную форму с помощью Мастера форм. Главная форма – больничнаякарта, подчиненная форма – посещение больным назначенных ему процедур.
9. С помощью Мастера отчетов создать отчет на основе таблицы “Больничная карта”,сгруппировав данные по диагнозу. Вывести дату заезда, дату отъезда, ФИО больного,возраст, пол, адрес, ФИО лечащего врача. Отсортировать данные по лечащему врачу.
Вариант 20
1. Спроектировать базу данных в первой, второй и третьей нормальных формахдля организации компьютерного учета дисконтных карт покупателей в магазине. Необходимоучитывать следующую информацию: дата покупки, номер дисконтной карты, ФИО покупателя,товар, фирма, скидка. Скидка на товар дается последовательно при каждой следующейпокупке: 2, 4,
6, 8, 10 %. Затем выдается новая дисконтная карта с теми же процентами. Первоначальнодисконтная карта выдается покупателю, если он сделал покупку на сумму более 10 тыс.рублей.
2. Создать запросы, в которых необходимо:
· вывести список и цену товара, проданного в последний месяц со скидкой
6 %;
· вывести список товара ценой более 20 тыс. рублей, проданного или нетсо скидкой (указать какой);
· вывести список покупателей, которые еще не меняли дисконтную карту.
3. С помощью запроса создать таблицу “Активные покупатели года”, содержащуюсписок покупателей, которые в течение года поменяли дисконтную карту.
4. Увеличить цену товара фирмы “Sony” на 2 %.
5. Определить, сколько товара каждой фирмы за последний месяц было проданосо скидкой и на какую сумму.
6. Вывести список товара определенной фирмы, проданного за последний месяцсо скидкой 10 %. Фирма товара задана пользователем в режиме диалога.
7. Создать формы для ввода справочной информации (о товарах, фирмах товара,дисконтных картах, скидках, покупателях), а также текущей информации о покупке товарасо скидкой.
8. Создать многотабличную форму с помощью Мастера форм. Главная форма – покупкатовара со скидкой, подчиненная форма – информация о покупателях этого товара соскидкой.
9. С помощью Мастера отчетов создать отчет на основе таблицы “Покупка товарасо скидкой”, сгруппировав данные по номеру дисконтной карты. Вывести дату покупки,товар, покупателя, скидку. Отсортировать данные по величине скидки и вывести суммутовара со скидкой и общую сумму товара.
Вариант 21
1. Спроектировать базу данных в первой, второй и третьей нормальных формахдля учета прихода и расхода денег на счету клиента по пластиковым картам. Банк имеет5 видов пластиковых карт с разными процентами. Проценты начисляются по пластиковойкарте в первый день квартала. Информация о клиенте: номер пластиковой карты, ФИОклиента, адрес, место работы, дата открытия пластиковой карты, дата закрытия пластиковойкарты, количество денег на счету в данный момент. Деньги на счет могут поступатьс места работы, с другого счета, либо счет может пополнять сам клиент.
2. Создать запросы, в которых необходимо:
· вывести информацию о клиентах пластиковой карты “Юнион-карт”, которыев последний год сами пополняли свой счет;
· вывести информацию о количестве денег на счету клиентов пластиковойкарты “Visa-electron”.
3. С помощью запроса создать таблицу “Богатые клиенты”, где вывести списокклиентов пластиковой карты “Visa-Gold”, у которой пополнялся счет в течение последнегоквартала на сумму более 60 тыс. руб.
4. Установить новую дату закрытия счета клиентов “Юнион-карт”, которые работаютв магазине № 20.
5. Определить, сколько денег по видам пластиковых карт расходовали клиентыв последний месяц.
6. Вывести информацию о поступивших деньгах за последний квартал на счет,номер которого задан пользователем в режиме диалога.
7. Создать формы для ввода справочной информации (о клиентах, виде пластиковыхкарт, видах поступления денег), а также текущей информации о приходе денег на счети расходе денег со счета.
8. Создать многотабличную форму с помощью Мастера форм. Главная форма – расходденег со счета, подчиненная форма – приход денег на счет.
9. С помощью Мастера отчетов создать отчет на основе таблицы “Приход денегна счет”, сгруппировав данные по видам пластиковых карт. Вывести дату прихода денег,номер счета, вид поступления денег, сумму прихода. Отсортировать данные по номерусчета. Определить общие суммы прихода денег по номеру счета и по видам пластиковыхкарт.
Список литературы
1. Гофман В.Э. Delphi5 / В.Э. Гофман, А.Д. Хомоненко. СПб.: БХВ Санкт-Петербург, 2000. 800 с.
2. ФароновВ.В. Delphi 5: учеб. курс / В.В. Фаронов. М.: Нолидж, 2001. 608 с.