Лабораторные работы в Access, для 11 класса.Visual Basic for Applications - неотъемлемая составная часть Access.
ACCESS и VISUAL BASIC FOR Application
1.Что такое Visual Basic for Applications.
Visual Basic for Applications представляет собой полуфункциональный язык программирования, являющийся неотъемлемой составной частью Access. Этот язык используется для разработки приложений, предназначенных для манипулирования БД и для настройки пользовательского интерфейса. VBA - это структурированный язык программиррования высокого уровня. В нем, как и в других языках, есть операторы проверки условий, циклического выполнения повторяющихся операций, а также обмена данными с пямятью и дисками. В языке VBA реализованы общие принципы объектно-ориентированного программирования. Это означает, что пользовательская среда, управляемая приложением, не подвергается изменениям путем выполнения последовательности процедур и операторов, но реагирует на события, связанные с различными объектами: полями ввода, кнопками, разделами форм и отчетов. В языке VBA программный код привязан непосредственно к объектам и срабатывает тогда, когда случается определенное событие. Все программирование в Windows основано именно на отклике на то или иное событие в системе.
2. Создание кода VBA с помощью мастеров элементов управления.
Одним из эффективных способов использования VBA является привязка кода к кнопкам, добавляемым в форму с помощью мастеров элементов управления. Чтобы добавить кнопку с фрагментом кода, а затем просмотреть код, необходимо выполнить следующее:
Открыть какую-либо БД, в которой есть таблица.
Выбрать таблицу и выполнить щелчок на кнопке Автоформа стандартной панели инструментов. Для таблицы будет создана форма по умолчанию.
Сохранить созданную форму, выполнив щелчок на кнопке закрытия окна, а затем на запрос о сохранении ответить утвердительно и ввести имя созданной формы или оставить предложенное для сохранения имя формы.
Выбрать вкладку Формы. Выбрать созданную форму.
Выполнить щелчок по кнопке Конструктор, для переключения в режим конструктора формы.
Выбрать команду Вид -> Панель элементов, если панель элементов не отображена на экране.
Проверить, активизированы ли мастера элементов управления (т.е. нажата ли кнопка Мастера).
Выполнить щелчок на элементе Кнопка.
Выполнить щелчок на свободном месте формы, чтобы вставить в нее кнопку. Откроется диалоговое окно мастера кнопок, показанное на рисунке 1.
|
Рис. 1. |
В списке Категории выбрать пункт Переходы по записям, а затем в списке Действия -> Поиск записи. После щелчка на кнопке Готово в форму будет добавлена кнопка, выполняющая поиск.
Выполнить щелчок на элементе Кнопка.
Вставить кнопку на свободном месте формы ниже предыдущей, созданной ранее. Снова откроется окно кнопок.
В списке Категории выбрать пункт Работа с формой, а в списке Действия - пункт Закрытие формы. После щелчка по кнопке Готово в форму будет добавлена кнопка, выполняющая закрытие формы.
Сохранить форму, выбрав команду Файл -> Сохранить. После этого можно запустить форму и проверить работу добавленных кнопок.
Переключиться в режим Констуктора, выполнив щелчок по кнопке Конструктор.
Выбрать команду Вид -> Программа или выполнить щелчок по кнопке Программа на панели инструментов. Откроется окно редактора Visual Basic for Applications, представленное на рисунке 2.
|
Рис. 2. |
В этом окне можно видеть три фрагмента программы на языке VBA: раздел объявлений (в верхней части окна), который содержит код, относящийся ко всей форме в целом, а также два раздела кода, привязанных к двум кнопкам.
Первый раздел начинается с заголовка процедуры:
Private Sub Кнопка13_Click( )
Заканчивается процедура оператором: End Sub. Операторы, заключенные между ними, выполняются после щелчка по кнопке Найти. Основная часть работы выполняется следующим оператором:
DoCmd.DoMenuItem acFormBar, AcEditMenu, 10, AcMenuVer70
Этот оператор выполняет те же действия, что и команда меню Правка -> Найти, т.е. выводит на экран диалоговое окно Поиск в поле, с помощью которого можно выполнить поиск.
Открыв модуль VBA, его можно редактировать как текст в любом текстовом редакторе. В окне редактора Visual Basic в код можно вставить текст из другого файла. Для этого выбрать команду Вставка -> Файл, а в открывшемся диалоговом окне выбрать нужный файл и выполнить щелчок по кнопке ОК.
Модули на языке Visual Basic можно выводить на печать. Для этого следует открыть модуль и выбрать команду Файл -> Печать.
3. Модули.
Структурным элементом программы, написанной на языке VBA, является модуль - совокупность объявлений и процедур, объединенных в единое целое. В ACCESS 97 модули трех типов: стандартные модули, модули формы и модули отчетов. В отличие от стандартного модуля, который создается таким же образом, как и любой другой объект БД, и может выполнять практически любые вычисления, модули форм и отчетов разрабатываются для обработки событий, связанных с элементами формы или отчета.
Каждый модуль состоит из области описания и одной или нескольких процедур. Процедура представляет собой последовательность операторов, которые часто называют программными кодами. Входящие в модуль процедуры объединены общей областью описания. В ней описываются данные и объекты, которые являются общепринятыми для процедур модуля. Иерархия указанных объектов такова:
база данных;
модуль;
область описания;
процедура;
код;
оператор.
Процедуры делятся на две категории: процедуры-подпрограммы (подпрограммы) и процедуры-функции (функции).
Процедура-подпрограмма активизируется при обращении к ней по имени, вследствие чего выполняется определенная последовательность операторов (инструкций). Подпрограмму используют, например, для задания свойства формы или заполнения списка значениями, полученными в результате вычислений.
Процедура-функция после выполнения возвращает некоторое значение, которое можно применять в операторах и выражениях в качестве переменной. Например, функции могут возвращать значение, используемое по умолчанию для некоторого поля, или вычислять сложный критерий в рамках запроса. В модуль можно включать любое количество функций и подпрограмм.
4. Процедуры.
Процедурой называется целостная структурная единица кода на языке VBA. Каждая процедура состоит из операторов, в которых применяются встроенные в ACCESS 97 функции, методы и свойства, которые предназначены для выполнения каких-либо операций над данными. Например, к свойству Click кнопки Найти приведенного ранее примера привязана следующая процедура:
Private Sub Command6_Click ( )
On Error GoTo Err_Command6_Click
Screen.PreviosControl.SetFocus
DoCmd.DoMenuItem acFormBar, acEditMenu, 10, , acMenuVer70
Exit Command6_Click:
Exit Sub
Err_Command6_Click:
MsgBox Err.Descrition
Resume Exit_Command6_Click
End Sub
Для обращения к перечисленным объектам, а также для обозначения операторов используются ключевые слова, которые записываются с прописной буквы (например, Function).
Теоретически каждая процедура может быть вызвана из любого модуля, а функция - из таких объектов, как форма, запрос или отчет. Наряду с общедоступными процедурами (Public), которыми являются все процедуры по умолчанию, существуют локальные, или личные процедуры (Private), доступные только в том модуле, в котором они описаны.
Для передачи значений из вызывающих операторов в вызываемые процедуры служат аргументы. С помощью аргументов ведется контроль за выполнением процедуры, устанавливается способ получения результата, определяются параметры вычислений и т.д.
4.1. Создание процедур обработки событий.
Начинающим разработчикам приложений ACCESS понадобится набор процедур для отклика на различные события, например, внесение изменений в поле или щелчок на кнопке. Код процедуры обработки события привязывается к событию, которое может произойти при работе с формой, отчетом или элементом управления. Результат выполнения процедуры-функции обычно применяется:
в качестве значения по умолчанию для поля таблицы;
в качестве значения критерия для запросов или фильтров;
в качестве содержимого поля.
Хотя конкретный вид процедуры зависит от события и желаемого отклика, можно предложить общую последовательность действий по созданию процедуры обработки события.
Открыть нужную форму или отчет в режиме конструктора. Если необходимо привязать процедуру к элементу управления, выбрать этот элемент.
Выбрать команду Вид -> Свойства, чтобы открыть окно свойств формы, отчета или элемента управления.
Открыть вкладку События.
Выполнить щелчок на строке свойства того события, которое должно запускать процедуру. Например, если процедура должна запускаться в ответ на изменение пользователем данных, выполнить щелчок на свойстве После обновления.
Выполнить щелчок по кнопке с тремя точками, чтобы открыть диалоговое окно Построитель.
В этом окне выполнить двойной щелчок мышью на строке Программы. Откроется окно редактора Visual Basic, в котором автоматически появится начальная и конечная строки процедуры.
Ввести операторы, образующие код процедуры.
Для повышения удобочитаемости кода процедуры, вводимого между ограничительными операторами, применяют приемы структурирования. Один из таких приемов заключается в том, что все операторы процедуры записываются с отступом от начала строки. Для создания отступа можно использовать клавишу Tab. По умолчанию позиции табуляции установлены через четыре символа. Отступы образуются и посредством команды Увеличить отступ из меню Правка. В результате активизации этой команды строка смещается вправо на то количество символов, которое указано в поле интервал табуляции. Команда Уменьшить отступ служит для выполнения противоположного действия.
Посредством отступов выделяют вложенные циклы и условные операторы внутри процедуры.
Тексты программ принято снабжать комментариями. В начале каждой строки комментария ставится апостроф, и такие строки не влияют на выполнение программы, а при синтаксическом анализе и компилировании - пропускаются. Наряду с отступами ACCESS 97 позволяет использовать различные шрифты и цвета для выделения фрагментов текста модуля. Эти параметры устанавливаются на вкладке Модуль диалогового окна Параметры.
4.2. Редактирование в окне модуля
Код модуля и тексты подпрограмм/функций редактируются также как документы в обычном текстовом редакторе. Для поиска процедуры в тексте модуля используется список процедур, находящийся в верхней части окна модуля.
При перемещении курсора из строки кода программа автоматически проверяет синтаксис этой строки и в случае обнаружения ошибки выводит на экран соответствующее сообщение. Для отказа от такой проверки следует выключить опцию проверка синтаксиса на вкладке Модуль диалогового окна Параметры.
Для быстрого поиска и замены фрагментов кода применяются команды Найти и Заменить из меню Правка.
В ACCESS при редактировании фрагментов кодов кроме общепринятых используются дополнительные комбинации клавиш: Ctrl + Y позволяет вставить в буфер строку, в которой находится курсор, не выполняя его маркировку; F3 и Shift + F3 позволяют просмотреть все фрагменты модуля, в которых встречается искомая последовательность символов. F3 дублирует команду Найти далее из меню Правка и кнопку Найти далее окна поиска.
4.3. Аргументы процедуры.
Благодаря аргументам пользователь имеет возможность управлять выполнением процедуры. При описании процедуры, зависящей от аргументов, имя аргумента принято вводить в скобках за именем процедуры в строке с ключевым словом Function/Sub. Например:
Function Рубли_в_Доллары (Коэффициент)
При вызове такой функции значение аргумента указывается в скобках после имени функции Например:
=Рубли_в_Доллары (4500)
Вызов процедуры, имеющей аргументы, должен сопровождаться заданием значений для всех объявленных аргументов. Эти значения перечисляются в том же порядке, что и аргументы при объявлении и разделяются запятыми. В пользовательских функциях или модулях в качестве аргументов могут применяться выражения.
5. Основные операторы VBA.
5.1. Переменные и оператор присваивания.
Переменные используются для сохранения значений величин, изменяющихся в процессе выполнения программы. Каждая переменная имеет имя по которому к ней обращаются. Правила присвоения имен аналогично правилу присвоения имен для полей. Присвоение значения для переменной осуществляется посредством оператора присваивания. В левой части оператора присваивания имя переменной, а в правой - значение или выражение.
Переменные могут создаваться автоматически, по мере появления в процедуре (неявное объявление). По умолчанию неявно объявленные переменные имеют тип Variant. Внутри такой переменной кроме значения хранится индикатор типа значения.
Неявное объявление типа допустимо только в случае отсутствия оператора Option Explicit в области описания модуля. Чтобы при создании нового модуля предотвратить появление этого оператора в области описания, следует отключить опцию явное описание переменных на вкладке Модуль диалогового окна Параметры.
Рекомендуется описывать все переменные явно, это позволит избежать ошибок, связанных с преобразованием типов данных. Явное описание типа производится оператором Dim, после которого указывается имя переменной и ее тип. Если при явном объявлении переменной не указан тип данных, а задано только имя переменной то будет создана переменная типа Variant, которой можно присваивать цепочки символов, числа с плавающей точкой, значения даты и времени. ACCESS 97 однозначно идентифицирует присваиваемые значения, поскольку наряду с ними он хранит в переменной и признак типа.
В ACCESS используются следующие типы данных:
Тип данных |
Хранимые значения |
Область значений |
Boolean |
Логическая величина |
True или False |
Byte |
Целое положительное число |
От 0 до 255 |
Integer |
Целое число |
От -32768 до 32768 |
Long |
Целое число двойной длины |
От -2147483648 до 2147483648 |
Single |
Число с плавающей точкой |
От -3,402823Е38
до -1,401298Е-45 |
Double |
Число с плавающей точкой двойной точности |
От -1,79769313486232Е308
до -4,94065645841247Е-32 |
Currency |
Число с фиксированной точкой (используется для проведения денежных расчетов) |
От -922337203685477,5808 до 922337203685477,5807 |
Date |
Дата |
От 1 января 100 года до 31 декабря 9999 года |
String (фиксированной длины) |
Строковое значение |
Длина от 1 до 65536 |
String (переменной длины) |
Строковое значение |
Длина от 0 до 2147483648 |
Для объявления нескольких переменных можно пользоваться одним оператором Dim, перечисляя их через запятую.
При объявлении переменной следует помнить об области действия. Переменные объявленные в процедуре, можно использовать только внутри этой процедуры. Если переменная должна быть доступна во всех процедурах одного модуля, ее необходимо объявить в области описания модуля. Здесь также можно применять оператор Dim. Наибольшую область действия имеет переменная, объявленная глобальной (с префиксом Global) в области описания модуля. Синтаксис оператора Global не отличается от синтаксиса оператора Dim.
В отличие от переменной, константа содержит фиксированное значение, которое не может быть изменено в процессе выполнения программы. Согласно правилам хорошего тона, константы, как и переменные, следует объявлять явно, указывая их имена и значения. Для объявления константы используется оператор Const. Объявленную константу можно использовать в программе, обращаясь к ней по имени. Например:
Const Число_Пи = 3.1415926
5.2. Условные операторы.
В языке VBA, как и в других языках программирования, основными элементами, управляющими ходом выполнения процедуры, являются условные операторы. Наиболее простой из них - оператор If . . . Then:
If Полина = "Ж" Then
Поздравление = "С 8 марта!"
End if
Если условие, заданное выражением между ключевыми словами If и Then выполняется, соблюдаются инструкции внутри блока, ограниченного ключевыми словами Then и End if. Иначе операторы между ключевыми словами не выполняются, а ACCESS перейдет к обработке оператора, который следует за ключевыми слова End if. В случае необходимости произвести два различных действия (одно при соблюдении условия, а второе - нет), надлежит воспользоваться полной формой оператора If:
If выражение Then
Оператор1
Else
Оператор2
End if
Если условие соблюдается, выполняется Оператор1 (или группа операторов, расположенных между ключевыми словами Then и Else, а если не соблюдается - Оператор2 (или группа операторов, расположенных между ключевыми словами Else и End if.
Однако, не всегда возможны два варианта решения. Учитывая это, VBA предоставляет в распоряжение пользователей оператор Select Case, предназначенный для выбора одного из множеств вариантов решений:
Select Case Город
Case "Киев"
Код_МГТС = "044"
Case "Москва"
Код_МГТС = "095"
Case "Запорожье"
Код_МГТС = "061-2"
Case Else
Print "Я не знаю такого города!"
End Select
При выполнении этого оператора проверяется значение переменной Город. В зависимости от результата проверки переменной Код_МГТС присваивается телефонной код некоторого города. Если значение переменной Город не совпадает ни с одним из значений, перечисленных в строках с ключевым словом Case, производится действие, указанной между ключевыми словами Case Else и End Select.
5.3. Операторы цикла.
Цикл используется для многократного повторения одной или нескольких инструкций. Количество повторений цикла связано с некоторым условием. В VBA предусмотрено несколько разновидностей циклов. Простейшим примером циклической конструкции является так называемый цикл по счетчику.
For Счетчик = 1 To 10
Print Счетчик
Next Счетчик
Цикл по счетчику ограничивается ключевыми словами For и Next. После ключевого слова For указывается имя переменной, которая будет выполнять роль счетчика, после знака равенства - начальное значение счетчика, а после ключевого слова To - конечное значение счетчика.
Еще одна разновидность цикла - While-цикл. Условие выполнения команд внутри такого цикла определяется некоторым условным оператором:
Do While Счетчик <> 10
Loop
Разновидностью цикла Do является Until-цикл, который выполняется, пока условное выражение ложно:
Do Until Счетчик=10
Счетчик=Счетчик+1
Loop
Вступление
Важнейшая задача компьютерных систем - хранение и обработка данных. Для ее решения были предприняты усилия, которые привели к появлению в конце 60-х - начале 70-х годов специализированного программного обеспечения - систем управления базами данных (DataGBase Management Systems - DBMS). СУБД позволяют структурировать, систематизировать и организовать данные для их компьютерного хранения и обработки. Сегодня невозможно представить себе деятельность любого современного предприятия или организации без использования профессиональных СУБД. Несомненно, они составляют фундамент информационной деятельности во всех сферах - начиная c производства и заканчивая финансами и телекоммуникациями.
Приступая к обсуждению проблем СУБД, необходимо прежде всего договориться о терминологии данных: запись, таблицы, столбец, строка, формы, страницы, макросы, модули, запросы, отчеты. Основное внимание уделено реляционной модели. Сердцевиной, центральным компонентом любой СУБД является сервер базы данных. Его техническое качество в решающей степени определяет главные характеристики системы, такие как производительность, надежность, безопасность и т.д.. В то же время богатство и разнообразие возможностей, заложенных в механизм его функционирования, сильно сказываются на эффективности разработки прикладных программ.
Модель взаимодействия "клиент-сервер", эволюция сервера БД главные особенности сегодняшних баз данных.
Часто, говоря о базе данных, имеют в виду просто некоторое автоматизированное хранилище данных. Такое представление не вполне корректно.
Действительно, в узком смысле слова, база данных - это некоторый набор данных, необходимых для работы (актуальные данные). Однако данные - это абстракция; никто никогда не видел "просто данные"; они не возникают и не существуют сами по себе. Данные суть отражение объектов реального мира. Пусть, например, требуется хранить сведения о деталях, поступивших на склад. Как объект реального мира - деталь - будет отображена в базе данных? Для того, чтобы ответить на этот вопрос, необходимо знать, какие признаки или стороны детали будут актуальны, необходимы для работы. Среди них могут быть название детали, ее вес, размер, цвет, дата изготовления, материал, из которого она сделана и т.д. В традиционной терминологии объекты реального мира, сведения о которых хранятся в базе данных, называются сущностями - entities (пусть это слово не пугает читателя - это общепринятый термин), а их актуальные признаки - атрибутами (attributes).
Каждый признак конкретного объекта есть значение атрибута. Так, деталь "двигатель" имеет значение атрибута "вес", равное "50", что отражает тот факт, что данный двигатель весит 50 килограммов.
Было бы ошибкой считать, что в базе данных отражаются только физические объекты. Она способна вобрать в себя сведения об абстракциях, процессах, явлениях - то есть обо всем, с чем сталкивается человек в своей деятельности. Так, например, в базе данных можно хранить информацию о заказах на поставку деталей на склад (хотя он суть не физический объект, а процесс). Атрибутами сущности "заказ" будут название поставляемой детали, количество деталей, название поставщика, срок поставки и т.д.
Объекты реального мира имеют друг с другом множество сложных связей . Однако этого недостаточно, так как могут понадобиться дополнительные сведения о производителе конкретной детали - его адрес, номер телефона и т.д. Следовательно, база данных должна содержать не только сведения о деталях и заказах на поставку, но и сведения о их производителях. Более того, база данных должна отражать связи между деталями и производителями (каждая деталь выпускается конкретным производителем) и между заказами и деталями (каждый заказ оформляется на конкретную деталь). Отметим, что в базе данных нужно хранить только актуальные, значимые связи.
Таким образом, в широком смысле слова база данных - это совокупность описаний объектов реального мира и связей между ними, актуальные для конкретной прикладной области. В дальнейшем мы будем исходить из этого определения, которое будет уточняться по ходу изложения.
Итак, мы получили представление о том, что хранится в базе данных. Теперь необходимо понять, как сущности, атрибуты и связи отображаются на структуры данных. Это определяется моделью данных.
Традиционно все СУБД классифицируются в зависимости от модели данных, которая лежит в их основе. Принято выделять иерархическую, сетевую и реляционную модели данных. Иногда к ним добавляют модель данных на основе инвертированных списков. Соответственно говорят о иерархических, сетевых, реляционных СУБД или о СУБД на базе инвертированных списков.
По распространенности и популярности реляционные СУБД сегодня - вне конкуренции. По сути, они стали фактическим промышленным стандартом и поэтому отечественному пользователю придется столкнутся в своей практике именно с реляционной СУБД. Поэтому кратко рассмотрим реляционную модель данных, не вникая в ее детали.
Она была разработана Коддом еще в 1969-70 годах на основе математической теории отношений и опирается на систему понятий, важнейшими из которых являются таблица, отношение, строка, столбец, первичный ключ, внешний ключ.
Реляционной считается такая база данных, в которой все данные представлены для пользователя в виде прямоугольных таблиц значений данных, и все операции над базой данных сводятся к манипуляциям с таблицами. Таблица состоит из строк и столбцов и имеет имя, уникальное внутри базы данных. Таблица отражает тип объекта реального мира (сущность), а каждая ее строка - конкретный объект. Так, таблица Деталь содержит сведения о всех деталях, хранящихся на складе, а ее строки суть набор значений атрибутов каждой конкретной детали. Каждый столбец таблицы - это совокупность значений конкретного атрибута объекта. Так, столбец Материал представляет собой множество значений "Сталь", "Олово", "Цинк", "Никель" и т.д. В столбце Количество содержатся целые положительные числа. Значения в столбце Вес суть вещественные числа, равные весу детали в килограммах.
Каждый столбец имеет имя, которое обычно записывается в верхней части таблицы (рис.1). Оно должно быть уникальным в таблице, однако различные таблицы могут иметь столбцы с одинаковыми именами. Любая таблица должна иметь по крайней мере один столбец; столбцы расположены в таблице в соответствии с порядком следования их имен при ее создании. В отличие от столбцов, строки не имеют имен; порядок их следования в таблице не определен, а количество логически не ограничено.
Так как строки в таблице не упорядочены, невозможно выбрать строку по ее позиции - среди них не существует "первой", "второй", "последней". Любая таблица имеет один или несколько столбцов, значения в которых однозначно идентифицируют каждую ее строку. Такой столбец (или комбинация столбцов) называется первичным ключом (primary key). В таблице Деталь первичный ключ - это столбец Номер детали. В нашем примере каждая деталь на складе имеет единственный номер, по которому из таблицы Деталь извлекается необходимая информация. Следовательно, в этой таблице первичный ключ - это столбец Номер детали. В нем значения не могут дублироваться - в таблице Деталь не должно быть строк, имеющих одно и то же значение в столбце Номер детали. Если таблица удовлетворяет этому требованию, она называется отношением (relation).
Взаимосвязь таблиц является важнейшим элементом реляционной модели данных. Она поддерживается внешними ключами (foreign key).
Помимо таблиц, в базе данных могут храниться и другие объекты, такие как экранные формы, отчеты (reports), представления (views) и даже прикладные программы, работающие с базой данных.
Для пользователей информационной системы недостаточно, чтобы база данных просто отражала объекты реального мира. Важно, чтобы такое отражение было однозначным и непротиворечивым. В этом случае говорят, что база данных удовлетворяет условию целостности (integrity).
Система управления базами данных Access (СУБД Access) входит, в стандартный набор прикладных программ пакета Microcoft Office, который - так исторически сложилось - используется практически в каждой организации нашей страны. Поэтому, естественно, его изучают и в школе, и в вузах.
Изучение СУБД Access следует начинать после овладения основными принципами работы с Windows (окна, меню, переключатели и т.д.) и освоения других программ пакета Microcoft Office (Word, Excel), что позволяет уделить основное внимание главным особенностям программы.
Изучение СУБД Access должно проходить в несколько этапов. На первом этапе изучаются основные понятия и рассматривается конкретная учебная база "Борей" На втором этапе изготовливается простейшая база данных, разработанную преподавателем. На третьем обучаемый создает свою базу данных по конкретному заданию.
В курсе рассматриваются следующие вопросы:
Занятие 1. Основные понятия баз данных. - 6 час.
Основные понятия баз данных, их терминология. Структура базы данных. Списки, записи. Связь с базами данных EXCFL.
Запуск Access.
Открытие базы данных.
Структура окна Access.
Работа с меню и панелями инструментов.
Работа с диалоговыми окнами.
Применение справочного указателя.
Работа со справочной системой.
Работа с помощником.
Закрытие базы данных и выход из Access.
Занятие 2. Построение БД в Access. - 8 час.
Обзор создания баз данных. Основные этапы их создания.
Ввод и редактирование данных в таблицах. Вывод информации.
Различные способы создания таблиц в Access.
Определение ключевого поля.
Создание индекса. Индексация по нескольким полям.
Добавление, удаление и изменение последовательности полей. Задание свойств полей.
Определение связи между таблицами.
Определение типа и схемы данных (связей), понятие целостности данных.
Поиск и сортировка данных в таблицах.
Открытие и закрытие таблицы.
Просмотр нескольких таблиц одновременно.
Изменение размеров окон.
Прокрутка содержимого таблицы.
Перестановка столбцов.
Закрепление и освобождение столбца.
Сокрытие и отображение столбца.
Изменение размеров строки и столбца.
Переход на заданную запись.
Занятие 3. Обработка данных в Access - запросы. - 6 час.
Установка критериев отбора.
Типы запросов.
Способы создания запросов.
Создание перекрестного запроса.
Создание запроса на одной таблице.
Поиск, Фильтрация и сортировка данных с помощью запросов.
Построение запросов на нескольких таблицах.
Занятие 4. Создание простейших экранных форм. - 2 час.
Создание форм для работы с данными.
Создание и редактирование элементов форм и их свойств.
Представление связи "один-ко-многим" с помощью подчиненной формы.
Занятие 5. Вывод информации на печать: отчеты. - 2 часа
Создание отчета.
Элементы и разделы отчетов, их свойства.
Связывание экранной формы с отчетом.
Занятие 6. Создание диаграмм. - 2 часа
Занятие 7. Примеры создания баз данных. - 4 часа
Занятие 8. Самостоятельное создание базы. - 4 часа
ВСЕГО: 34 часа
База данных.
Запросы.
Доступ пользователей к базовым таблицам всегда закрывают (ограничение доступа к информации). Для доступа к данным используют другое гибкое и удобное средство – запросы.
Для пользователей одной и той же таблицы можно создать множество различных запросов, каждый из которых извлекает именно ту информацию, которая необходима конкретному лицу в данный момент.
В результате работы запроса из общей БД формируется результирующая таблица, содержащая часть информации, соответствующей запросу.
При создании запроса данные можно не только отбирать, но и сортировать, фильтровать, объединять, разъединять, изменять. При этом никаких изменений в базовой таблице не происходит.
В запросе можно производить итоговые вычисления.
Типы запросов:
1.Запросы на выборку.
Возвращает данные одной или нескольких таблиц и отображает их в виде таблицы. Используется также для группировки записей и вычисления сумм, средних значений, подсчета записей и нахождение других типов итоговых значений.
2.
Запросы с параметрами.
Перед
выполнением запроса выводится одно или
несколько диалоговых окон, в которых
пользователь должен ввести значения
параметров (условия отбора).
3.
Перекрестный запрос.
Позволяет
выполнять статистические расчеты, после
чего результаты группируются в виде
таблицы по двум наборам данных, один из
которых определяет заголовки столбцов,
а другой – заголовки строк. Выполняется
для одной таблицы.
Создание запроса на выборку.
Создается макет запроса (на бумаге):
Запрос «Список пациентов»
Поля: ФИО пациента Дата рождения ФИО врача Диагноз Дата посещения Возраст Табл: пациенты пациенты врачи посещ. Посещ.
Запросы ------- Конструктор
Выбрать таблицы (запросы), участвующие в запросе ---- добавить
Закрыть
Перетащить лкм поля, выбранные в макете в запрос в строку «поле»
Установить типы сортировки (выбрать из списка в строке «Сортировка»).
Установить режим вывода на экран (оставить или снять флажок в строке «Вывод на экран»).
Сформулировать условие отбора (в строке «Условие отбора»)
Сохранить, присвоив имя запросу.
Закрыть запрос.
Выполнение вычислений.
Выражение записывается в поле после «:» по правилам языка запросов SQL.
Поле Возраст: int((date()-[Дата рождения])/365,25))
Int – округление до целого
Date() – возвращает текущую дату
365,25 – среднее число дней в году
Дата рождения] – значение поля [Дата рождения]
Создание запроса с параметрами.
Создать запрос на выборку или перекрестный запрос.
В режиме конструктора запроса перетащить поля из списка полей в бланк запроса.
Для каждого поля, которое предполагается использовать как параметр, ввести в ячейку строки Условие отбора текст приглашения, заключенный в []. Это приглашение будет выводиться при запуске запроса. Текст приглашения должен отличаться от имени поля.
Для запроса Список пациентов выводится диалоговое окно «Введите заболевание», «Введите начальную дату», «Введите конечную дату». В результате выводятся данные по определенному заболеванию за указанный период.
Создание перекрестного запроса.
Запросы ------- Конструктор
Выбрать таблицу (запрос) для формирования перекрестного запроса ---- добавить
Закрыть
Перетащить поля с строку Поле в бланке запроса и задать условия отбора.
На панели инструментов нажать кнопку Тип запроса и выбрать Перекрестный.
Для поля или полей, значения которых должны быть представлены в виде заголовков строк, щелкнуть ячейку строки Перекрестная таблица и выбрать значение Заголовки строк. В ячейке строки Групповая операция оставить значение Группировка.
Для поля или полей, значения которых должны быть представлены в виде заголовков столбцов, щелкнуть ячейку строки Перекрестная таблица и выбрать значение Заголовки столбцов. В ячейке строки Групповая операция оставить значение Группировка.
Для поля, значения которого нужно использовать при создании перекрестной таблицы, щелкнуть ячейку Перекрестная таблица и выбрать Значение.
В строке Групповая операция выбрать статистическую функцию, которая будет использована для заполнения перекрестной таблицы (например, SUM, Count..)
Выполнение перекрестного запроса «Статистика заболеваний поликлиники» на основе таблицы «Посещения»
Поля: Диагноз (заголовки столбцов)
Дата посещения (заголовки строк)
Количество заболевших (данные, полученные при помощи функции COUNT)
Контрольная работа.
I вариант.
Разработать структуру таблицы для базы данных «Личные автомобили»: определить названия и типы полей, главный ключ.
Внести в таблицу 3 записи.
К разработанной базе данных придумать и записать запрос. Вывести результат выполнения запроса.
Для базы данных «Погода» вывести дни, когда влажность была больше 67%
II вариант.
Разработать структуру таблицы для базы данных «Регистрация собак»: определить названия и типы полей, главный ключ.
Внести в таблицу 3 записи.
К разработанной базе данных придумать и записать запрос. Вывести результат выполнения запроса.
Для базы данных «Погода» вывести дни с положительной температурой.
ЛАБОРАТОРНЫЕ
РАБОТЫ К КУРСУ
"Базы данных и
знаний"
ЛАБОРАТОРНАЯ
РАБОТА № 1
Введение в СУБД Access
1. Введение
Первая часть цикла лабораторных работ к курсу "Базы данных и знаний" изучению основных принципов работы с СУБД Access.
Для исполнения этого цикла пригодна операционная среда Windows 95/98/ME или Windows NT/2000 и выше.
Целью лабораторной работы №1 является
Знакомство с интерфейсом СУБД Access
Создание БД при помощи мастера БД.
В лабораторной работе №1 все выполняют одну и ту же последовательность действий.
2. Порядок выполнения лабораторных работ
2.1. Подготовка к выполнению
Так как первое занятие является ознакомительным, предварительной подготовки к работе не требуется.
2.2. Выполнение задания.
Запустить на выполнение приложение Microsoft Access (Пуск->Программы->Microsoft Access или любым другим способом). Выбрать режим работы Запуск мастера, выполнить щелчок по кнопке . В окне Создание при выбранной вкладке Базы данных отображается галерея шаблонов для создания БД, используемых в различных прикладных областях: Адресная книга, Библиотека, Винный погреб, Главная книга, Заказы на работы, Каталог видеозаписей, Контакты, Личное имущество, Мероприятия, Музыкальная коллекция, Основные фонды, Прием заказов, проекты, Расходы, Ресурсы, Рецепты, Сбор средств, Склад, студенты и занятия, Тренировки, Участники, Фотоальбомы.
Выбрать шаблон Библиотека, выполнить щелчок по кнопке .
В появившемся на экране диалоговом окне Файл новой базы данных выбрать диск и папку, в которых будет сохраняться создаваемая БД, в разделе Имя файла будет предложено имя файла для создаваемой БД Библиотека.mdb, выполнить щелчок по кнопке .
Через небольшой промежуток времени появится окно Создание баз данных, в котором будет указано какие сведения будет содержать создаваемая БД. В частности БД Библиотека будет содержать:
Сведения о книгах
Сведения об авторах
Цитаты
Для продолжения выполнить щелчок по кнопке .
Появившееся на экране следующее окно содержит в левом части имена таблиц, которые будут созданы, в правой части список обязательных и необязательных полей для выбранной таблицы. В этом же окне необходимо включить параметр Да, включить образцы данных, затем выполнить щелчок по кнопке .
В следующем окне выбрать вид оформления экрана, просмотрев все предлагаемые варианты заставок для фона, затем выполнить щелчок по кнопке . <P .
В следующем окне ввести название базы данных или воспользоваться предложенным - "Библиотека". Если необходимо использовать рисунок для оформления отчетов, включить параметр Да в разделе Добавить рисунок во все отчеты? При этом станет активной кнопка , позволяющая получить доступ к дискам и папкам для выбора нужного для вставки рисунка. Затем щелчок по кнопке , а в следующем окне по кнопке .
Для создания всех объектов базы данных потребуется некоторое количество времени. После завершения процесса создания БД на экране появится кнопочная форма для работы с БД "Библиотека".
Выполнить щелчок мышью по кнопке формы "Книги". Откроется форма Книги (рис.1.1.), содержащая информацию о книге, а также форму, содержащую информацию об авторе. В нижнем левом углу окна расположены кнопки, используемые для перемещения по записям в таблице: к первой записи в таблице, к предыдущей записи в таблице, к следующей записи в таблице, к последней записи в таблице, в текстовом окне цифрой указывается номер текущей записи.
|
Рисунок 1. |
После просмотра закрыть окно формы.
Аналогично познакомиться с остальными пунктами.
В левом нижнем углу экрана будет расположена свернутое до размеров пиктограммы окно самой базы данных. Восстановить размер окна щелчком по соответствующей кнопке. Выбрать вкладку Таблицы. Выбрать первую таблицу из списка таблиц.
Выполнить щелчок по кнопке . Информация будет представлена в режиме Таблицы. В верхней строке в качестве заголовков столбцов представлены имена полей. Каждая следующая строка представляет собой запись в таблице. Закрыть окно.
Выполнить щелчок по кнопке . В окне будет представлена структура выбранной таблицы. В верхней части окна конструктора представлены имена полей и типы, в разделе Свойства поля - свойства выбранного поля. Слева от имени первого поля расположен символ ключ, обозначающий, что данное поле является ключевым. Завершив знакомство со структурой таблицы, закрыть окно конструктора. Свернуть окно базы данных.
Ознакомиться с пиктограммами на стандартной панели инструментов.
Закрыть БД, выполнив щелчок по кнопке .
Закончить работу с приложением Access, закрыв его окно.
3. Отчет к лабораторной работе
Отчет к лабораторной работе должен содержать:
Тему работы
Краткое описание последовательности выполнения задания.
В методических указаниях к отдельным лабораторным работам приведены примеры выполнения лабораторных работ, которые могут так же быть и примерами формирования отчетов. Разрешается в отчетах делать описание менее детальными, чем это сделано в примерах.
4. Литература
Джонс Э., Саттон Д. Office 97 Библия пользователя. - К.-М.:"Диалектика", 1997.
Пасько В. Access 97 (Русифицированная версия) - К: Изд.группа BHV, 1998. 3.Информатика в школе №3 ,2003
ЛАБОРАТОРНАЯ
РАБОТА №2
Основы работы с таблицами
1. Цель работы
Получение навыков работы по созданию структуры таблиц, модификации структуры таблиц, заполнению таблиц. Создание ключевых полей, индексированных полей, установка связей между таблицами. Удаление информации из связанных таблиц и восстановление этой информации.
2. Темы для предварительного изучения.
Перед выполнением лабораторной работы №2 необходимо ознакомиться со следующими темами: Проектирование реляционных баз данных, Создание новой базы данных, Создание таблиц, Типы полей, используемые СУБД Access, Сохранение таблиц, Создание ключевого поля, Изменение структуры таблицы, добавление данных в таблицу, Редактирование и удаление данных, Изменение внешнего вида таблицы, Печать таблицы, Поиск данных в таблице, Добавление индексов в таблицу, Установка связей между таблицами.
3. Задание.
Создать структуры таблиц, ключевые и индексные поля. Заполнить таблицы данными, установить связи, удалить данные, восстановить их.
3.1. Выполнение задания
3.1.1. Разработка структуры БД
Выполнение
начинается с разработки структуры БД.
На этом этапе должны быть детально
проанализированы условия задания и, на
их основе, определено количество таблиц,
необходимых для описания всех характеристик
анализируемой предметной области. Кроме
того, необходимо определить какие поля
в таблицах будут использованы в качестве
ключевых, а также определить каким
образом будет осуществляться связь
между таблицами. Если невозможно
установить связи посредством использования
ключевых полей, определить таблицы,
которые будут использоваться только
для связи между другими таблицами.
3.1.2. Создание таблиц.
Для каждого
поля конкретной таблицы необходимо
определить его тип и размер и тщательно
проверить, удовлетворяет ли диапазон
значений выбранного типа тем значениям,
которые может реально принимать данное
поле. При необходимости, для некоторых
полей можно установить Условие на
значение и задать сообщение, выдаваемое
на экран в случае несоответствия
введенного значения заданному условию
или присвоить значения, принимаемые по
умолчанию. Можно также определить формат
вводимой информации для конкретных
полей.
Заполнить соответствующей
информацией каждый из разделов создаваемой
структуры таблицы: Имя поля, Тип данных
и Описание.
Раздел описаний необязателен
для заполнения, но информация, введенная
в данный раздел отображается в строке
состояния при вводе данных для конкретного
поля, облегчая процесс ввода.
3.1.3. Создание индексов и ключевых
полей.
Информацию в таблицах можно
упорядочить, создав индекс для конкретного
поля или нескольких полей. Желательно,
чтобы для таблиц были созданы ключевые
поля. Для установления связей между
таблицами наличие таких полей обязательно.
Ключевое поле может быть простым или
составным, т.е. состоять из нескольких
полей для однозначной идентификации
каждой записи в таблице.
3.1.4. Сохранение таблиц
По окончании
создания структуры таблицы ее необходимо
сохранить. Для сохранения выполнить:
Файл -> Сохранить как/экспорт.
В окне Сохранение объекта должен
быть выбран параметр в текущей базе
данных. Ввести имя созданной таблицы.
Выполнить щелчок по кнопке
.
После сохранения закрыть окно Конструктора
таблиц.
3.1.5. Заполнение таблиц.
Открыть
таблицу в режиме таблицы. Заполнить
необходимой информацией, подготовив
для заполнения не менее десяти записей
для основной таблицы. Сохранение не
требуется, т.к. сохранение производиться
сразу при переходе к следующей записи.
Закрыть заполненную таблицу. Аналогично
поступить с остальными таблицами.
3.1.6. Установка связей между
таблицами.
Выполнить команду Сервис
-> Схема данных.
Появится окно Схема данных. Если связи устанавливаются впервые, оно будет содержать диалоговое окно Добавление таблицы. Если окно Добавление таблицы отсутствует, его можно открыть, выбрав Связи -> Добавить таблицу или выбрать пиктограмму Добавить таблицу.
Выбрать таблицу, которая будет использоваться для установки связей, затем выполнить щелчок на кнопке , для добавления таблицы в окно Схема данных.
Повторить действия, описанные в п.2 для каждой таблицы, участвующей в установке связи.
Для создания связей между таблицами переместить поле (или поля), которое необходимо связать на соответствующее поле другой таблицы. В большинстве связей ключевое поле первой таблицы связывается с аналогичным полем второй таблицы. После перемещения поля появится диалоговое окно Связи.
В диалоговом окне представлены названия таблиц, между которыми устанавливаются связи и имена полей для связи. Полям, на основе которых создаются связи между таблицами, не обязательно иметь одинаковые имена, однако они должны быть одного типа. Исключение составляют поля счетчиков, которые можно связывать с числовыми полями.
Для автоматической поддержки целостности БД установить флажок Обеспечение целостности данных. Кроме этого флажка в окне представлены и другие:
Каскадное обновление связанных полей. При включении данного режима изменения, сделанные в связанном поле первой таблицы, автоматически вносятся в поля связанной таблицы, содержащей те же данные.
Каскадное удаление связанных полей. При включении данного режима удаление записей в первой таблице приводит к удалению соответствующих записей связанной таблицы.
Выполнить щелчок на кнопке . Затем закрыть окно Связи. При запросе о сохранeнии связи выполнить щелчок на кнопке .
3.1.7. Завершение работы с БД.
Для завершения работы с БД необходимо закрыть окно БД, затем закрыть окно приложения.
Пример выполнения лабораторной работы .
ТЕМА: Создание БД. Создание таблиц.
Цель работы: Приобретение навыков в работе с ACCESS по созданию таблиц.
Постановка задачи: Создать базу данных ОТДЕЛ КАДРОВ, поместив в нее три таблицы: СОТРУДНИК, СОСТАВ СЕМЬИ и ШТАТНОЕ РАСПИСАНИЕ, содержащие информацию о сотрудниках предприятия.
Описание прикладной области Отдел
кадров предприятия.
Анализ предметной
области показывает, что для автоматизации
работы Отдела кадров целесообразно
создать БД ОТДЕЛ КАДРОВ, состоящую из
трех таблиц: СОТРУДНИК, СОСТАВ СЕМЬИ,
ШТАТНОЕ РАСПИСАНИЕ. Таблицы будут
связаны между собой следующим
образом:
Таблица СОТРУДНИК с таблицей
СОСТАВ СЕМЬИ связываются по полю Идент
код, а с таблицей ШТАТНОЕ РАСПИСАНИЕ
- по полю Должн.
Характеристики таблицы-объекта СОТРУДНИК:
идентификационный код Идент код (10 символов - тип текстовый );
фамилия Фамилия ( 20 символов - тип текстовый);
имя Имя ( 15 символов - тип текстовый);
отчество Отчество ( 15 символов - тип текстовый);
пол Пол (1 символ - тип текстовый);
дата рождения Дата рожд ( поле типа дата );
место рождения Место рожд ( 15 символов - тип текстовый );
образование Образов (15 символов - тип текстовый);
должность Должн (15 символов - тип Мастер подстановок);
стаж работы Стаж работы (длинное целое - тип числовой );
семейное положение Сем полож (7 символов - тип текстовый) ;
дата зачисления на работу Дата зач (поле типа дата/время);
телефон Тел (8 символов - тип текстовый);
домашний адрес Адрес (поле-МЕМО).
Характеристики таблицы-объекта СОСТАВ СЕМЬИ:
идентификационный код Идент код (10 символов - тип Мастер подстановок );
отношение Отношение (10 символов - тип текстовый);
фамилия Фамилия (20 символов - тип текстовый);
имя Имя (15 символов - тип текстовый);
отчество Отчество (15 символов - тип текстовый);
год рождения Дата рожд (поле типа дата/время).
Характеристики таблицы-объекта ШТАТНОЕ РАСПИСАНИЕ:
№ п/п НПП (длинное целое - тип числовой);
название подразделения Назв подр (30 символов - тип текстовый);
должность Должн (15 символов - тип текстовый);
количество штатных единиц Кол ед (длинное целое - тип числовой);
должностной оклад Оклад (длинное целое - тип числовой);
фонд заработной платы за месяц ФЗПМ (длинное целое - тип числовой);
фонд заработной платы на год ФЗПГ (длинное целое - тип числовой);
Описание работы.
Загрузить Microsoft Access, выполнив действия: Пуск-> Программы -> Microsoft Access (или выполнив щелчок на соответствующей пиктограмме на панели Microsoft Office).
Для создания новой базы данных выполнить следующее:
В окне Microsoft Access выбрать переключатель Новая база данных, затем - кнопка .
В появившемся окне Новая База данных выбрать диск и открыть папку в которой будет создаваться новая БД. Затем в разделе Имя файла ввести имя создаваемой БД ОТДЕЛ КАДРОВ, выполнить щелчок по кнопке .
В появившемся на экране окне БД ОТДЕЛ КАДРОВ выбрать вкладку Таблицы, затем - кнопку .
В окне Новая таблица выбрать режим создания таблицы Конструктор, затем щелчок по кнопке .
Создать структуру таблицы СОТРУДНИК: В окне Конструктора таблиц заполнить соответствующие разделы: Имя поля, Тип данных, Описание. Для перехода от раздела к разделу использовать клавишу .
В разделе Тип данных для изменения типа раскрыть окно выбора типа, выполнив щелчок по кнопке раскрытия списка, затем выполнить щелчок в строке, содержащей соответствующий тип.
При этом в нижней части экрана в разделе Свойства поля появляется информация о данном типе поля. При необходимости туда можно вносить изменения, выполнив щелчок в соответствующей строке, удалив предыдущее значение, введя новое. Дополнительно можно задать формат поля, условие на значение и т.д.
После создания структуры таблицы необходимо задать ключевое поле. Обычно, поле, используемое в качестве ключевого, располагается в таблице первым. Для создания ключевого поля выделить поле, выполнив щелчок слева от имени поля на полосе выделения. Выполнить Правка -> Ключевое поле или выполнить щелчок по пиктограмме Ключевое поле. Слева от имени поля появится изображение ключа.
Поле Должн выбрать в качестве индексированного. Для этого в разделе Свойство поля выбрать строку Индексированное поле. Выполнить щелчок по кнопке раскрытия списка и выбрать строку Да (Допускаются совпадения).
После создания структуры таблицы
сохранить ее. Выбрать Файл ->
Сохранить или Сохранить как... В
окне Сохранение объекта выбрать В
текущей базе данных, затем ввести
имя для сохранения созданной таблицы:
СОТРУДНИК, затем -
.
Аналогичным
образом создать структуру таблицы
СОСТАВ СЕМЬИ.
Для поля Идент код целесообразно
выбрать тип Мастер подстановок. Это
позволит облегчить заполнение данными
этого поля. После выбора типа Мастер
подстановок откроется первое диалоговое
окно Создание подстановки. В этом
окне выбирается способ, которым столбец
подстановки получит свои значения: из
таблицы или запроса. Затем щелчок по
кнопке
.
В следующем диалоговом окне выбирается
таблица, содержащая столбец подстановки.
Затем щелчок по кнопке
.
В
следующем окне выбирается поле,
используемое в качестве столбца
подстановки и щелчком по кнопке
переносится
в окно Выбранные поля. Щелчок по
кнопке
.
Следующее
окно содержит сообщения о том, какие
действия выполнить со столбцом в случае
необходимости. Затем щелчок по кнопке
.
В
следующем окне выполнить щелчок по
кнопке
.
Появится сообщение о том, что перед
созданием связи необходимо сохранить
таблицу. Для этого выполнить щелчок по
кнопке
.
В
разделе Тип данных будет указан
тип Текстовый, т.е. тип, соответствующий
типу поля подстановки из таблицы
СОТРУДНИК.
В таблице СОСТАВ СЕМЬИ необходимо выбрать поле Идент код в качестве индексированного поля. Для этого в разделе Свойство поля выбрать строку Индексированное поле. Выполнить щелчок по кнопке раскрытия списка и выбрать строку Да (Допускаются совпадения).
При сохранении таблицы отказаться от создания ключевого поля.
Создать структуру таблицы ШТАТНОЕ РАСПИСАНИЕ, включив в нее указанные поля и выбрав для них соответствующие типы.
В качестве ключевого поля выбрать поле Должн.
Заполнение таблиц.
Заполнение
таблиц целесообразно начинать с таблицы
ШТАТНОЕ РАСПИСАНИЕ, так как поле Должн
этой таблицы используется в качестве
столбца подстановки для заполнения
соответствующего поля таблицы СОТРУДНИК.
В окне Базы данных выбрать нужную таблицу
Выполнить щелчок по кнопке
На экране появится структура БД в табличном виде
Заполнение производится по записям, т.е. вводится информация для всей строки целиком
Переход к следующему полю осуществляется нажатием клавиши <Tab>.
При заполнении первой строки следом за ней появится новая пустая строка.
Для заполнения поля МЕМО в таблице СОТРУДНИК нажать комбинацию клавиш <Shif+F2>, предварительно установив курсор в поле МЕМО. После ввода или редактирования данных в этом окне щелкнуть по кнопке .
Для заполнения данными поля Должн в таблице СОТРУДНИК использовать список поля подстановки, раскрывая его щелчком мыши по кнопке раскрытия списка. Выбор нужной должности производится щелчком мыши в соответствующей строке.
Аналогично заполняется данными поле Идент код в таблице СОСТАВ СЕМЬИ.
После заполнения таблиц данными установить связь между таблицами
Выбрать команду Сервис -> Схема данных или выбрать пиктограмму Схема данных. Появится окно Схема данных, содержащее диалоговое окно Добавление таблицы. Выбрать таблицу СОТРУДНИК, затем выполнить щелчок на кнопке , для добавления таблицы в окно Схема данных. Повторить действие для каждой таблицы, участвующей в установке связи. Для создания связей между таблицами СОТРУДНИК и СОСТАВ СЕМЬИ поместить поле Идент код из таблицы СОТРУДНИК, на соответствующее поле таблицы СОСТАВ СЕМЬИ, появится диалоговое окно Связи. Для автоматической поддержки целостности БД установить флажок Обеспечение целостности данных. Установить также флажки Каскадное обновление связанных полей и Каскадное удаление связанных полей. Выполнить щелчок на кнопке . В окне Тип отношений будет указан тип один-ко-многим. Соответствующим образом связать таблицы СОТРУДНИК и ШТАТНОЕ РАСПИСАНИЕ, выбрав для связи поле Должн и установив те же флажки. Затем закрыть окно Связи. При запросе на сохранeние связи выполнить щелчок на кнопке .
В окне БД выбрать таблицу ШТАТНОЕ РАСПИСАНИЕ, открыть ее в режиме Таблицы. Удалить должность "статистик". Открыть таблицы СОТРУДНИК и СОСТАВ СЕМЬИ и убедиться в том, что из таблиц исчез сотрудник, занимавший эту должность, а также сведения о его семье.
Восстановить удаленную информацию во всех таблицах.
Таблица 1
Таблица-объект СОТРУДНИК
Идент код |
Фамилия |
Имя |
Отчество |
Пол |
Дата рожд |
Место рожд |
Образов |
Должн |
Стаж работы |
Сем полож |
Дата зач |
Телефон |
1314152347 |
Старченко |
Светлана |
Борисовна |
ж |
22.04.43 |
г.Казань |
ср.технич. |
статистик |
36 |
замужем |
24.09.95 |
65-12-13 |
1545678990 |
Архипов |
Сергей |
Иванович |
м |
23.03.49 |
г.Харьков |
высшее |
директор |
30 |
женат |
10.12.88 |
нет |
1624790203 |
Круговой |
Геннадий |
Иванович |
м |
22.04.45 |
г.Омск |
высшее |
зав.кафедрой |
32 |
вдовец |
01.09.90 |
68-14-13 |
1748576413 |
Царева |
Анна |
Николаевна |
ж |
30.07.50 |
г.Харьков |
высшее |
гл.бухгалтер |
29 |
замужем |
01.01.96 |
47-23-15 |
1934789231 |
Каменева |
Татьяна |
Дмитриевна |
ж |
24.06.59 |
г.Курск |
высшее |
начальник ОК |
20 |
замужемм |
30.12.90 |
65-67-72 |
1955443781 |
Безродный |
Владимир |
Михайлович |
м |
05.09.53 |
г.Харьков |
высшее |
зам.директора |
24 |
женат |
01.09.92 |
32-32-14 |
2014654788 |
Садчиков |
Аркадий |
Викторович |
м |
10.01.57 |
г.Тамбов |
ср.технич. |
диспетчер |
21 |
холост |
15.10.98 |
10-12-10 |
2055894321 |
Бронзов |
Станислав |
Иванович |
м |
12.11.60 |
г.Москва |
высшее |
преподаватель |
15 |
женат |
31.08.94 |
23-10-70 |
2178943214 |
Мапошенко |
Юрий |
Николаевич |
м |
21.11.64 |
г.Омск |
высшее |
специалист |
13 |
женат |
31.08.94 |
43-35-13 |
2200987654 |
Коваль |
Александра |
Николаевна |
ж |
31.03.65 |
г.Киев |
высшее |
методист |
10 |
замужем |
01.10.92 |
47-67-33 |
2233668943 |
Строков |
Олег |
Викторович |
м |
05.08.65 |
г.Орел |
высшее |
преподаватель |
12 |
женат |
10.09.92 |
69-05-03 |
2314743296 |
Бородулин |
Андрей |
Васильевич |
м |
31.12.69 |
г.Киев |
высшее |
доцент |
8 |
холост |
31.08.95 |
27-14-12 |
МЕМО-поле Таблицы СОТРУДНИК
Адрес |
ул.Гв.Широнинцев 21,кв.30 |
пер.Хрустальный 8 |
ул.Светлая 14,кв.55 |
ул.Артема 24, кв.1 |
ул.Героев труда 28-Б,кв.76 |
пр.Правды 44, кв.55 |
пер.Короленко 2, кв.1 |
ул. Революции 6, кв.2 |
ул.Пушкинская 54,кв2 |
ул.Иванова 5, кв.2 |
пр. Косиора 162, кв161 |
пр.Гагарина 117, кв.20 |
Таблица 2
Таблица-объект СОСТАВ
СЕМЬИ
Идент код |
Отношение |
Фамилия |
Имя |
Отчество |
Дата рожд |
1314152347 |
отец |
Старченко |
Николай |
Иванович |
12/01/1917 |
1314152347 |
мать |
Старченко |
Людмила |
Яковлевна |
25/12/1920 |
1545678990 |
сын |
Архипов |
Дмитрий |
Сергеевич |
01/091988 |
1748576413 |
муж |
Царев |
Петр |
Алексеевич |
14/11/1948 |
1934789231 |
муж |
Каменев |
Александр |
Иванович |
15/02/1952 |
1955443781 |
дочь |
Безродная |
Алла |
Владимировна |
24/06/1991 |
2014654788 |
мать |
Садчикова |
Мария |
Ивановна |
29/04/1930 |
2055894321 |
дочь |
Бронзова |
Инна |
Станиславовна |
15/12/1998 |
2178943214 |
сын |
Мапошенко |
Игорь |
Юрьевич |
22/06/1992 |
2178943214 |
сын |
Мапошенко |
Владимир |
Юрьевич |
23/08/1995 |
2233668943 |
дочь |
Строкова |
Юлия |
Олеговна |
28/07/1985 |
2233668943 |
дочь |
Строкова |
Наталия |
Олеговна |
14/03/1990 |
Таблица 3
Таблица-объект ШТАТНОЕ
РАСПИСАНИЕ
Нпп |
Назв подр |
Должн |
Кол ед |
Оклад |
ФЗПМ |
ФЗПГ |
1 |
Дирекция |
бухгалтер |
2 |
230 |
460 |
5520 |
2 |
Дирекция |
гл.бухгалтер |
1 |
430 |
430 |
5160 |
3 |
Дирекция |
директор |
1 |
530 |
530 |
6360 |
4 |
уч.кафедра |
диспетчер |
1 |
100 |
100 |
1200 |
5 |
уч.кафедра |
доцент |
1 |
500 |
500 |
6000 |
6 |
уч.кафедра |
зав.кафедрой |
1 |
430 |
430 |
5160 |
7 |
Дирекция |
зам.директора |
1 |
500 |
500 |
6000 |
8 |
уч.кафедра |
методист |
2 |
200 |
400 |
4800 |
9 |
Дирекция |
начальник ОК |
1 |
150 |
150 |
1800 |
1800 |
уч.кафедра |
преподпватель |
4 |
350 |
1800 |
21600 |
11 |
уч.кафедра |
статистик |
1 |
100 |
100 |
1200 |
12 |
уч.кафедра |
Специалист |
2 |
150 |
300 |
3600 |
4. Выводы
При выполнении лабораторной работы были изучены следующие вопросы:
Создание БД
Создание структуры таблиц
Создание индексных и ключевых полей
Заполнение таблиц
Установка связей между таблицами
Каскадное удаление
ЛАБОРАТОРНАЯ
РАБОТА № 3
Работа с запросами
1. Цель работы
Получение навыков работы по созданию запросов
2. Темы для предварительного изучения.
Назначение запросов, типы запросов, создание запросов на выборку из одной или нескольких таблиц, типы запросов на изменение и технология их разработки.
3. Задание.
Создать запрос на выборку информации из основной таблицы, из связанных таблиц, создать параметрический запрос, запрос для выбора информации для создания сложного отчета.
4. Пример выполнения задания.
Создание запроса-выборки
Создать запрос, содержащий поля: Идент. код, Фамилия, Имя, Отчество, Дата рождения, включающий только тех сотрудников, фамилии которых начинаются с буквы "С". Список должен быть отсортирован по дате рождения по возрастанию.
Для этого необходимо выполнить следующую последовательность действий:
При выбранной вкладке Запросы выполнить щелчок по кнопке . Открывается окно Новый запрос, в котором выбрать режим создания запроса Конструктор, затем - ;
Открывается окно Запрос1: запрос на выборку, а затем активизируется окно Добавление таблицы, в котором выбрать из списка таблиц таблицу Сотрудник щелчком мыши по имени таблицы, а затем выполнить щелчок по кнопке , после чего закрыть окно Добавление таблицы;
Окно Запрос1: запрос на выборку,
состоит из 2-х частей:
В верхней части
размещаются выбранные таблицы или
запросы, на базе которых строится
запрос;
В нижней части расположен
бланк построения запроса QBE (Query by
example - запрос по образцу);
При помощи мыши переместить нужные поля из выбранной таблицы и задать способы сортировки и условия отбора из таблицы. Для этого:
выделить поля для запроса при помощи мыши в комбинации с клавишами Shift или Ctrl и отбуксировать на бланк построения запроса QBE. Поля можно перемещать в бланк QBE и по одному.
в строке Поле поля размещаются по столбцам слева направо.;
в строке Имя таблицы отображается имя таблицы, из которой выбрано поле;
в строке Сортировка в столбце поля Дата рождения установить сортировку по возрастанию. Для этого выполнить щелчок мышью в строке Сортировка в столбце поля Дата рождения, при этом появляется кнопка со стрелкой, нажатие на которую раскрывает окно выбора типа сортировки. Выбрать тип сортировки по возрастанию;
В строке Вывод на экран можно отключить вывод поля на экран, убрав флажок для соответствующего поля;
В строке Условие отбора в столбце Фамилия ввести условие Like "C*". Перед вводом буквы С перейти на русский шрифт;
Окончательный вид окна конструктора запросов будет иметь вид представленный на Рисунке 1
|
|
Закрыть окно конструктора запроса и ввести имя запроса fam_c в ответ на вопрос сохранить изменения или нет. В окне базы данных при выбранной вкладке Запросы появится запрос с именем fam_c.
Выполнить запрос на выборку.
Выполнить щелчок мышью по запросу fam_c, затем по кнопке . На экран выводится таблица, в которой должны отображаться 3 записи с фамилиями, начинающимися на букву С, записи отсортированы по дате рождения по возрастанию.
В случае, если не получен ожидаемый результат, внести изменения в запрос fam_c. Выполнить щелчок мышью по запросу fam_c, затем по кнопке . Внести необходимые изменения, сохранить запрос, повторить его выполнение.
Создать параметрический запрос.
Запросы, представляющие собой
варианты базового запроса и незначительно
отличающиеся друг от друга, называются
параметрическими.
Создать запрос, в результате выполнения которого будет выводиться Фамилия, Имя, Отчество и Идентификационный код определенного сотрудника.
При выбранной вкладке Запрос выполнить щелчок по кнопке
Открывается окно Новый запрос, в котором выбрать режим создания запроса Конструктор, затем - ;
Открывается окно Запрос2: запрос на выборку, а затем активизируется окно Добавление таблицы, в котором выбрать из списка таблиц таблицу Сотрудник щелчком мыши по имени таблицы, а затем выполнить щелчок по кнопке , после чего закрыть окно Добавление таблицы;
При помощи мыши переместить нужные поля из выбранной таблицы.
В столбце Фамилия в строке Условие отбора ввести в квадратных скобках [Введите фамилию] (сообщение, которое будет выводиться на экран при выполнении запроса).
Выбрать из меню Запрос подпункт Параметры. В появившемся окне Параметры запроса в столбце Параметр ввести то же сообщение без квадратных скобок. В столбце Тип данных выбрать тип Текстовый, выполнить щелчок по кнопке .
Закрыть запрос, на вопрос о сохранении ответить положительно, сохранить запрос с именем Идент код.
Созданный запрос будет иметь вид представленный на Рисунке 2.
|
|
Выполнить запрос, выполнив щелчок по кнопке . В появившемся на экране окне Введите значение параметра ввести фамилию сотрудника, информацию о котором необходимо получить, выполнить щелчок по кнопке .
На экране появится таблица с данными о выбранном сотруднике. Завершив просмотр, закрыть окно.
Создать запрос, используемый для создания сложного отчета.
При выбранной вкладке Запрос выполнить щелчок по кнопке
Открывается окно Новый запрос, в котором выбрать режим создания запроса Конструктор, затем - ;
Открывается окно Запрос3: запрос на выборку, а затем активизируется окно Добавление таблицы, в котором выбрать из списка таблиц таблицу Сотрудник щелчком мыши по имени таблицы, а затем выполнить щелчок по кнопке , аналогично добавить таблицы Состав семьи и Штатное расписание, после чего закрыть окно Добавление таблицы;
Из первой таблицы выбрать поля Фамилия, Имя, Отчество, Должность. При помощи мыши переместить на бланк запроса.
Из второй таблицы выбрать поле Идент код, поместить его на бланк запроса.
Из третьей таблицы выбрать поля Назв Подр и Оклад и также поместить их на бланк.
Добавить в бланк раздел Групповая операция (Вид -> Групповые операции) или выполнив щелчок по соответствующей пиктограмме .
В столбце Идент код выполнить щелчок
мышью в строке Групповая операция,
появится кнопка раскрытия списка.
Выполнить по ней щелчок мышью и выбрать
из списка функцию Сount (количество
записей с одинаковыми значениями для
данного поля).
Окно запроса будет
иметь вид, представленный на Рисунке
3.
|
|
Закрыть запрос, выполнив его сохранение под именем Запрос для отчета.
Выполнить запрос.
Результат выполнения представлен на Рисунке 4.
|
|
ЛАБОРАТОРНАЯ
РАБОТА №4
Создание отчетов
Цель работы
Получение навыков работы по созданию отчетов.
Темы для предварительного изучения.
Назначение отчетов. Порядок создания отчетов. Разделы бланка отчетов. Элементы управления. Форматирование элементов управления. Сортировка и группировка. Сохранение и печать отчета.
Задание.
Создать простой отчет, отображающий результаты обработки информации для Прикладной области, выбранной в соответствии с вариантом задания. Создать сложный отчет на основе ранее созданного запроса.
Пример выполнения задания .
I.Создать простой отчет, содержащий:
список сотрудников предприятия с полями: Идент код, Фамилия, Имя, Отчество, Телефон;
Сгруппировать данные по 1-ой букве фамилии;
Вычислить количество фамилий в каждой группе.
Вид отчета представлен на Рисунке 1.
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Рисунок 1 |
Для создания такого отчета выполнить:
1. Открыть базу данных, для которой создается отчет ;
2. Начать создание отчета в режиме Конструктор:
Выбрать вкладку Отчеты, нажать кнопку . Появляется окно Новый отчет, в котором выбрать Конструктор (для самостоятельного создания отчета), указать источник данных - таблицу Сотрудник (выбрать таблицу из раскрывающегося списка с перечнем таблиц и запросов). Нажать .
На экран выводятся окна, представленные на Рисуноке 2:
|
|
a) Окно отчета в режиме конструктора с заголовком Отчет1: отчет и со следующими областями: Верхний колонтитул; Область данных; Нижний колонтитул.
b) Панель элементов, содержащая кнопки для создания элементов управления, которые можно включить в отчет. Панель элементов можно закрыть или вывести, выполнив щелчок по кнопке на панели инструментов или выполнив команду Вид -> Панель элементов;
c) Список полей базовой таблицы или запроса (список полей таблицы Сотрудник). Список полей можно вывести или закрыть, выполнив команду Вид -> Список полей или выполнив щелчок по кнопке на панели инструментов.
Перемещая окна (отбуксировав мышкой за заголовок) можно расположить их в удобном для работы порядке, например: Окно отчета - слева, Список полей в правой области экрана, ниже -Панель элементов.
Дополнительно можно вывести окно свойств создаваемого отчета (Вид -> Свойства) или выполнив щелчок по пиктограмме Свойства.
3. Установить размеры отчета
Переместить правую границу окна создания отчета с помощью указателя мыши так, чтобы на верхней линейке было видно число 19 (размер отчета 18 см);
Выполнить Файл -> Параметры страницы:
При выбранной вкладке Страница установить книжную ориентацию листа и размер А4 (210х297);
При выбранной вкладке Поля установить размеры левого и правого поля по 10 мм;
При выбранной вкладке Столбцы установить: количество столбцов-1; ширина столбца-18 см; высота - 3 см; ;
Переместить правую границу области данных отчета до значения 18 на верхней линейке;
4. Добавить в бланк отчета области Заголовок отчета и Примечание отчета:
Для этого выполнить Вид -> Заголовок/Примечание отчета.
5. Переместить из таблицы в Область данных список нужных полей.
В окне таблицы Сотрудник выделить в комбинации с клавишей Ctrl поля Идент код, Фамилия, Имя, Отчество, Телефон и отбуксировать их в Область данных. В Области данных появятся связанные элементы управления, т.е. элементы, связанные с полями таблицы Сотрудник (слева - подпись, справа - значение поля). Выполнить щелчок мышью на свободном пространстве в области данных, чтобы убрать выделение вставленных элементов управления;
Можно просмотреть содержимое отчета на данном этапе, выбрав Файл -> Предварительный просмотр. В дальнейшем можно использовать эту команду для просмотра содержимого отчета после внесения каких-либо изменений;
Переместить заголовки столбцов в область Верхний колонтитул для этого:
Выделить подписи элементов управления (слева) в Области данных, для чего нажать клавишу Shift и выполнить щелчок на каждой подписи (или обвести их слева направо с нажатой левой кнопкой мыши). Выполнить команду Вырезать;
Активизировать Верхний колонтитул щелчком мыши по заголовку и выполнить команду Вставить. Подписи будут вставлены в область Верхнего колонтитула;
Расставить заголовки столбцов следующим образом: подпись Идент код переместить в левый верхний угол области. Остальные подписи расставить так, чтобы расстояние между левыми границами подписей было равно 3см;
Выполнить редактирование и форматирование заголовков столбцов (в соответствии с Рисунком 1). Для этого выделить все подписи в строке (поместить курсор мыши слева от строки, чтобы курсор принял форму стрелки, направленной вправо и выполнить щелчок мышью), щелкнуть правой кнопкой мыши на выделении, в появившемся окне выбрать команду Свойства и установить во вкладке Макет следующие значения: Ширина 3см, Высота 1см, Тип границы Сплошная, Размер шрифта 12см. Для редактирования подписи выделить элемент, выполнить щелчок мышью на подписи и внести нужные изменения. Замечания: Форматировать можно и отдельный элемент, выделив только его. При форматировании можно использовать пиктограммы панели форматирования на панели инструментов, или команды меню Формат -> Выровнять, Формат -> Размер, или установить соответствующие свойства для данного элемента.
Уменьшить размер области Верхний колонтитул по размеру высоты заголовков столбцов, добавив приблизительно 0,5 см, переместив границу следующей области Область данных вверх;
Разместить поля в Области данных в ряд под заголовками соответствующих столбцов. Уменьшить размер Области данных мышкой переместив нижнюю границу области вверх. Отформатировать каждое поле в соответствии с Рисунком.1;
Просмотреть содержимое отчета на данном этапе, выбрав Файл -> Предварительный просмотр. Внести изменения, если есть несоответствия Рисунку.1 или ошибки.
6.Определить поля, по которым будет производиться группировка и сортировка данных:
Выполнить щелчок по пиктограмме Сортировка и группировка панели инструментов или выбрать Вид -> Сортировка и группировка. Открывается окно Сортировка и группировка;
в столбце Поле/выражение (левый столбец) открыть список полей и выбрать поле Фамилия;
в столбце Порядок сортировки установить порядок сортировки (по возрастанию)
Выполнить установку свойств в области Свойства группы:
Для Заголовок группы и Примечание группы установить значение Да. При этом в окне отчета появляется дополнительная область Заголовок группы "Фамилия" перед Областью данных и Примечание группы после Области данных;
Для группировки по первому символу установить в строке Группировка значение По первым символам;
В строке Интервал установить число начальных символов, по которым хотим образовывать группы, для группировки по одному первому символу это значение равно 1;
В строке Не разрывать установить значение Полную группу;
Закрыть окно Сортировка и группировка.
7. Вставить в область Заголовок группы бланка отчета текст "Группа фамилий, начинающихся на букву ", а затем должна выводиться буква, по которой создавалась очередная группа:
Выделить область Заголовок группы в бланке отчета (щелкнуть на заголовке области);
Из окна Список полей перетащить
поле Фамилия в бланк отчета в область
Заголовок группы.. Поместить
указатель с изображением руки с вытянутым
указательным пальцем на маркер,
расположенный в левом верхнем углу
левого поля (подпись) и отбуксировать
это поле в левый верхний угол области
Заголовка группы, отступив 0,25см
слева. Аналогично переместить правое
поле вправо на 8см от левой границы
области.
В левом поле набрать текст
"Группа фамилий, начинающихся на
букву" и нажать клавишу Enter.
Установить параметры форматирования:
курсив, размер 10. Затем выполнить
действия: Формат -> Размер -> По
размеру данных. Изменить размеры
правого поля, перемещая маркер правой
границы влево так, чтобы видна была
одна буква Ф и немного следующая.
В окне Панель элементов щелкнуть по кнопке , переместить курсор в область Заголовок группы под набранный текст и провести линию, подчеркнув оба поля;
Просмотреть отчет, выбрав Файл -> Просмотр. Если видны 2 буквы фамилии, то уменьшить поле Фамилия, если где-либо не видно буквы, то поле Фамилия увеличить (как описано предыдущем пункте).
9. Вставить в область Примечание группы бланка отчета текст "Количество в группе ", а затем должно выводиться количество фамилий, относящихся к данной группе:
Создать элемент управления. Для этого выполнить щелчок на Панели элементов по кнопке , а затем в области Примечание группы в месте расположения элемента. Появляется элемент, состоящий из 2-х частей. Переместить правую часть элемента вправо. В левую часть поля (подпись) ввести текст "Количество в группе". В правую часть элемента ввести формулу =Count([Фамилия]). Произвести форматирование.
10.Вставить рисунок в заголовок отчета:
Вставка -> Рисунок -> Из файла. В открывшемся окне выбрать подходящий графический файл, выполнить щелчок по кнопке .
11.Вставить текст заголовка отчета и рядом дату создания отчета:
На панели элементов выбрать кнопку , переместить курсор в область Заголовок отчета справа от рисунка. Отодвинуть правое поле ближе к правой границе области. В левое поле ввести текст заголовка. В правом поле с надписью Свободный ввести формулу =Date(). Отформатировать поля. Вставить номер страницы в области Нижний колонтитул:
Аналогично добавить элемент Номер страницы: в левое поле ввести текст "Страница", а в правое =Page. Сохранить отчет.
II Создать сложный отчет, содержащий:
список сотрудников по подразделениям, имеющих в составе семьи более 1 человека;
суммарный оклад и средний по подразделениям;
суммарный оклад по всему предприятию.
Вид отчета представлен на Рисунке 3.
Список
по подразделениям сотрудников,
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Рисунок 3 |
В связи с тем, что создаваемый отчет использует информацию из всех трех таблиц базы данных, будем строить отчет на базовом запросе Запрос для отчета, созданном в предыдущей лабораторной работе.
Действия аналогичны действиям, описанным в п. I данной лабораторной работы при создании простого отчета.
1. Начать создание отчета в режиме Конструктор:
Выбрать вкладку Отчеты, нажать кнопку . Появляется окно Новый отчет, в котором выбрать Конструктор (для самостоятельного создания отчета), указать источник данных -запрос Запрос для отчета. Нажать Оk.
Вид экрана - как и при создании отчета по п I.2.
2. Установить размеры отчета.
3. Добавить в бланк отчета области Заголовок отчета и Примечание отчета.
4. Определить поля, по которым будем группировать и сортировать данные:
Установить группировку по полю Назв подр (название подразделения), порядок сортировки по возрастанию.
5. Добавить области Заголовок группы и Примечание группы;
6. Выбрать из окна запроса Запрос для отчета в Область данных список всех полей, кроме Назв подр и перенести заголовки колонок таблицы в Верхний колонтитул. Выполнить размещение и форматирование всех полей в областях Верхний колонтитул и Область данных в соответствии с Рисунком 3.
7. Заполнить область Заголовок группы:
8. Выбрать из окна запроса Запрос для отчета в Заголовок группы поле Назв подр и изменить содержимое поля подпись (левое поле) на Название подразделения. Выполнить форматирование полей в соответствии с Рисунком 3.
9. Заполнить область Примечание группы:
Переместить из списка полей запроса Запрос для отчета в Примечание группы поле Назв подр 2 раза, расположив связанные поля друг под другом. Изменить название полей подпись (левое поле) на Суммарный оклад по подразделению для первой строки и Средний оклад по подразделению для второй строки;
Рядом с 1-ой и 2-ой строками создать по одному не заполненному полю, щелкнув сначала на Панели элементов по кнопке , а затем в области Примечание группы в соответствующей строке. Убрать левые поля (подписи), выделив их и затем, щелкнув на кнопке на панели элементов. В верхней строке в поле с надписью Свободный набрать формулу =Sum([Оклад]) (для вычисления суммарного оклада по подразделению) , в нижней - =Avg([Оклад]) (для вычисления среднего оклада по подразделению). Разместить поля с формулами под заголовками соответствующих столбцов;
Аналогично создать строку для вывода в отчет Суммарного оклада по предприятию в разделе Примечание отчета, создав сначала связанное поле и введя соответствующую подпись и формулу. Для поля с формулой в качестве значения свойства Сумма с накоплением установить значение, отличное Отсутствует.
10. Вставить в раздел Заголовок отчета текст заголовка отчета, а рядом дату и время создания отчета, вставить номер страницы. Для вывода даты и времени использовать в формуле функцию Now().
11. Выполнить форматирование полей в соответствии с Рисунком 3. Просмотреть отчет. Сохранить отчет.
ЛАБОРАТОРНАЯ
РАБОТА № 5
Работа с формами
1. Цель работы
Получение навыков работы по созданию экранных форм.
2. Темы для предварительного изучения.
Назначение форм. Создание формы с помощью мастера форм. Создание простой формы в режиме Конструктора. Работа с элементами управления. Создание сложной формы на основе ранее созданных простых форм. Задание выражения для элементов управления.
3. Задание
Создать форму для ввода информации в таблицы в удобном для пользователя формате. Создать сложную форму, объединив формы, созданные для разных таблиц.
Пример выполнения задания.
Постановка задачи: Создать формы для заполнения таблиц: Сотрудник, Состав семьи, Штатное расписание. Содержание отчета:
Тема лабораторной работы.
Цель работы.
Применяемые средства.
Описание последовательности действий при создании форм.
Описание работы:
4.1. Для создания формы Сотрудник выполнить следующие действия:
В окне БД выбрать вкладку Формы. Выполнить щелчок по кнопке . Появится диалоговое окно Новая форма.
Выбрать из списка пункт Конструктор. Затем в списке Выберите в качестве источника данных таблицу или запрос выбрать имя таблицы Сотрудник. Выполнить щелчок по кнопке .
Если на экране отсутствует список полей выбранной для построения формы таблицы, выбрать пункт меню Вид -> Список полей.
Поля из списка переместить на форму (по одному или предварительно выделив с использованием клавиши Shift и мыши, для выделения всех полей выполнить двойной щелчок мышью на заголовке окна Список полей.
Разместить поля на форме в нужных местах по прилагаемому образцу Рисунок 1.
|
Рисунок 1 |
Перемещение полей и их имен по форме производиться следующим образом: Выделяется объект (поле с именем) щелчком мыши. Вокруг него появятся маркеры перемещения и изменения размеров. Перемещать поле можно вместе с привязанным к нему именем или отдельно от него. Для перемещения поместить указатель мыши на квадратик, находящийся в левом верхнем углу элемента. Указатель мыши в виде ладони позволяет перемещать объект вместе с привязанным к нему именем, в виде ладони с вытянутым указательным пальцем - перемещает один объект. Нажать кнопку мыши и, удерживая ее, буксировать поле или его имя в нужное место в форме. Затем отпустить кнопку мыши. Для изменения надписи, связанной с полем необходимо выполнить на ней двойной щелчок мышью. В открывшемся диалоговом окне Надпись выбрать вкладку Макет, изменить значение у свойства Подпись. Затем закрыть окно. Для изменения размеров поместить курсор на размерные маркеры, при этом курсор примет вид двунаправленной стрелки. Нажать кнопку мыши, буксировать в нужном направлении, затем отпустить кнопку мыши. Для удаления поля выделить его, нажать клавишу Delete или выбрать команду Правка ->Удалить.
Сохранить форму, выбрав из меню Файл -> Сохранить как... в открывшемся окне выбрать режим сохранения в текущей базе данных, затем щелчок по кнопке .
Просмотреть форму в режиме Формы, выполнив щелчок по кнопке .
Если вид формы не удовлетворяет, открыть форму в режиме Конструктор и внести необходимые изменения, затем сохранить форму Файл -> Сохранить или выполнить щелчок по пиктограмме Сохранить.
4.2. Аналогичным образом создать формы: Состав семьи и Штатное расписание. 4.3. Создать объединенную форму, включающую две ранее созданные: Сотрудник и Состав семьи.
В окне БД, при выбранной вкладке Формы, выбрать форму Сотрудник. Она будет основной. Выполнить щелчок по кнопке .
Расположить окна БД и Конструктора с открытой формой Сотрудник таким образом, чтобы они не перекрывали друг друга.
В окне БД выбрать форму Состав семьи. Переместить ее в окно формы Сотрудник на свободное место в правой части формы.
Закрыть форму Сотрудник. Подтвердить сохранение в появившемся на экране окне.
4.4. Перейти к вкладке Таблицы, выбрать таблицу Состав семьи, удалить все записи из таблицы. 4.5. Заполнить таблицу Состав семьи, используя для заполнения созданную форму Сотрудник.
В окне БД выбрать вкладку Формы, выбрать форму Сотрудник, выполнить щелчок по кнопке .
В открывшемся окне появится форма Сотрудник, содержащая первую запись таблицы Сотрудник - Рисунок 2.
|
Рисунок 2 |
Раздел формы Состав семьи будет незаполненным. Для заполнения выполнить щелчок в окне ввода первого элемента формы Состав семьи. Информацию брать из Таблицы.1. Для перехода к следующему полю используется клавиша Enter. Ввести информацию в следующее поле и.т. д.
Если в составе семьи сотрудника несколько человек, для перехода к следующей записи Состав семьи использовать кнопки, расположенные в нижней части формы. Кнопка со стрелкой вправо - движение вперед, со стрелкой влево - в обратном направлении. Заполнив информацию о всех членах семьи сотрудника, перейти к следующей записи таблицы Сотрудник, используя аналогичные кнопки в окне формы Сотрудник. Заполнить для него информацию о составе семьи и т.д., пока не будут внесена информация о составе семьи для всех сотрудников. Закрыть форму Сотрудник.
4.6. Просмотреть заполненную таблицу Состав семьи в режиме Таблица. Убедиться, что все записи, помещенные в таблицу верны. При необходимости внести изменения в данные таблицы. Закрыть таблицу. Подтвердить сохранение произведенных изменений.
Таблица.2
Идент код |
Отношение |
Фамилия |
Имя |
Отчество |
Дата рожд |
|
|
|
|
|
|
1314152347 |
отец |
Старченко |
Николай |
Иванович |
12/01/1917 |
|
|
|
|
|
|
1314152347 |
мать |
Старченко |
Людмила |
Яковлевна |
25/12/1920 |
|
|
|
|
|
|
1545678990 |
сын |
Архипов |
Дмитрий |
Сергеевич |
01/091988 |
|
|
|
|
|
|
1748576413 |
муж |
Царев |
Петр |
Алексеевич |
14/11/1948 |
|
|
|
|
|
|
1934789231 |
муж |
Каменев |
Александр |
Иванович |
15/02/1952 |
|
|
|
|
|
|
1955443781 |
дочь |
Безродная |
Алла |
Владимировна |
24/06/1991 |
|
|
|
|
|
|
2014654788 |
мать |
Садчикова |
Мария |
Ивановна |
29/04/1930 |
|
|
|
|
|
|
2055894321 |
дочь |
Бронзова |
Инна |
Станиславовна |
15/12/1998 |
|
|
|
|
|
|
2178943214 |
сын |
Мапошенко |
Игорь |
Юрьевич |
22/06/1992 |
|
|
|
|
|
|
2178943214 |
сын |
Мапошенко |
Владимир |
Юрьевич |
23/08/1995 |
|
|
|
|
|
|
2233668943 |
дочь |
Строкова |
Юлия |
Олеговна |
28/07/1985 |
|
|
|
|
|
|
2233668943 |
дочь |
Строкова |
Наталия |
Олеговна |
14/03/1990 |
ЛАБОРАТОРНАЯ
РАБОТА № 6
Кнопочные формы
1. Цель работы
Получение навыков работы по созданию кнопочных форм.
2. Темы для предварительного изучения.
Необходимость создания кнопочных форм. Создание кнопочной формы с помощью диспетчера кнопочных форм. Создание новой кнопочной формы, которая открывается из стартовой кнопочной формы. Изменение существующей кнопочной формы. Выбор кнопочной формы, автоматически открываемой при открытии БД. Удаление кнопочной формы
3. Задание.
Создать кнопочную форму для работы с созданными объектами базы данных (таблицы, формы, отчеты). Предусмотреть выход из БД.
4. Пример выполнения задания (вариант 30).
Выбрать в меню Сервис команду Надстройки и подкоманду Диспетчер кнопочных форм.
Если выводится приглашение подтвердить создание кнопочной формы, выполнить щелчок по кнопке (Рисунок 1).
|
В диалоговом окне Диспетчер кнопочных форм выполнить щелчок по кнопке (Рисунок 2).
|
В диалоговом окне Создание (Рисунок 3) в поле Имя страницы кнопочной формы ввести имя кнопочной формы для ввода информации (например, Ввод и редактирование). Выполнить щелчок по кнопке .
|
Аналогично создать кнопочные формы для просмотра документов и кнопку для выхода из БД. Выбрать строку Ввод и редактирование выполнить щелчок по кнопке .
В диалоговом окне Изменение страницы кнопочной формы (Рисунок 4) выполнить щелчок по кнопке .
|
В диалоговом окне Изменение элемента кнопочной формы (Рисунок 5) ввести текст подписи для первой кнопки (Ввод информации) выбрать команду в поле со списком Команда. (Открытие формы в режиме добавления.) Если выбрана одна из команд работы с формами, то в поле со списком Форма следует выбрать имя открываемой формы (Ввод информации). Выполнить щелчок по кнопке .
|
Повторить эти действия для создания всех нужных кнопок кнопочной формы. Имена всех созданных элементов (кнопок) появятся в разделе Элементы данной кнопочной формы.Чтобы изменить или удалить какую-либо из созданных кнопок, выбрать имя этой кнопки в списке и нажать кнопку или . При необходимости изменить порядок кнопок в списке выбрать элемент и нажать кнопку или .
Закончив создание кнопочной формы, выполнить щелчок по кнопке .
Базы данных.
Отчеты.
Отчет представляет собой эффективный способ представления данных в печатном формате. Имея возможность управлять размером и внешним видом всех элементов отчета, пользователь может отобразить сведения желаемым образом.
Позволяют:
Добавить эмблему или рисунки.
Сгруппировать записи.
Представить данные на диаграмме.
Вычислить итоговое значение.
Большая часть сведений в отчете поступает из базовой таблицы, запроса. Остальные сведения отчета хранятся в его структуре.
Создание отчета.
Автоотчет создается по также, как и запрос: с помощью автоотчета (формы ленточные, в столбец), мастера отчетов.
Отчет ------ Создать------ Выбрать форму отчета (ленточный, в столбец, мастер отчета…)------ Выбрать таблицу или запрос на базе которого выполняется отчет ------- в диалоговом режиме.
Созданный отчет при необходимости дорабатывается в режиме конструктора.
Погода
День |
Осадки |
Температура (градусы С) |
Давление (мм.рт.ст.) |
Влажность (%) |
15.03.99 |
Снег |
-3,5 |
746 |
67 |
16.03.99 |
Без осадков |
0 |
750 |
62 |
17.03.99 |
Туман |
1,0 |
740 |
100 |
18.03.99 |
Дождь |
3,4 |
745 |
96 |
19.03.99 |
Без осадков |
5,2 |
760 |
87 |
Подписка
Фамилия |
Адрес |
Индекс издания |
Название издания |
Тип издания |
С какого |
По какое |
Михайлов |
ул. Солнечная 15-103 |
40532 |
Звезда |
Газета |
01.01.98 |
31.12.98 |
Орлов |
ул. Леонова 20-3 |
132451 |
Маяк |
Журнал |
01.07.98 |
31.12.98 |
Зайцева |
Ул. Лесная 56-3 |
33254 |
Семья |
Журнал |
01.01.98 |
30.06.98 |
Попов |
ул. Леонова 11-156 |
40532 |
Звезда |
Газета |
01.01.98 |
31.12.98 |
Рыкова |
ул. Звездная 15-34 |
33254 |
Семья |
Журнал |
01.10.98 |
31.12.98 |
Библиотека
(номер, автор, название, год)
Погода
(день, осадки, температура, давление, влажность)
Успеваемость
(ученик, русский язык, алгебра, химия)
Факультативы
(ученик, геологический, танцы, физика)
БД «Поликлиника»
Фамилия пациента |
Дата рождения |
Номер участка |
Фамилия врача |
Дата посещения |
Диагноз |
Лосев О.И. |
20.04.65 |
2 |
Петрова О.И. |
11.04.98 |
Грипп |
Орлова Е.Ю. |
25.01.47 |
1 |
Андреева И.В. |
05.05.98 |
ОРЗ |
Лосев О.И. |
20.04.65 |
2 |
Петрова О.И. |
26.07.98 |
Бронхит |
Дуров М.Т. |
05.03.30 |
2 |
Петрова О.И. |
14.03.98 |
Стенокардия |
Жукова Л.Г. |
30.01.70 |
2 |
Петрова О.И. |
11.04.98 |
Ангина |
Орлова Е.Ю. |
25.01.47 |
1 |
Андреева И.В. |
11.07.98 |
Гастрит |
Быкова А.А. |
01.04.75 |
1 |
Андреева И.В. |
15.06.98 |
ОРЗ |
Дуров М.Т. |
05.03.30 |
2 |
Петрова О.И. |
26.07.98 |
ОРЗ |
БД «Поликлиника»
Фамилия пациента |
Дата рождения |
Номер участка |
Фамилия врача |
Дата посещения |
Диагноз |
Лосев О.И. |
20.04.65 |
2 |
Петрова О.И. |
11.04.98 |
Грипп |
Орлова Е.Ю. |
25.01.47 |
1 |
Андреева И.В. |
05.05.98 |
ОРЗ |
Лосев О.И. |
20.04.65 |
2 |
Петрова О.И. |
26.07.98 |
Бронхит |
Дуров М.Т. |
05.03.30 |
2 |
Петрова О.И. |
14.03.98 |
Стенокардия |
Жукова Л.Г. |
30.01.70 |
2 |
Петрова О.И. |
11.04.98 |
Ангина |
Орлова Е.Ю. |
25.01.47 |
1 |
Андреева И.В. |
11.07.98 |
Гастрит |
Быкова А.А. |
01.04.75 |
1 |
Андреева И.В. |
15.06.98 |
ОРЗ |
Дуров М.Т. |
05.03.30 |
2 |
Петрова О.И. |
26.07.98 |
ОРЗ |
БД «Поликлиника»
Фамилия пациента |
Дата рождения |
Номер участка |
Фамилия врача |
Дата посещения |
Диагноз |
Лосев О.И. |
20.04.65 |
2 |
Петрова О.И. |
11.04.98 |
Грипп |
Орлова Е.Ю. |
25.01.47 |
1 |
Андреева И.В. |
05.05.98 |
ОРЗ |
Лосев О.И. |
20.04.65 |
2 |
Петрова О.И. |
26.07.98 |
Бронхит |
Дуров М.Т. |
05.03.30 |
2 |
Петрова О.И. |
14.03.98 |
Стенокардия |
Жукова Л.Г. |
30.01.70 |
2 |
Петрова О.И. |
11.04.98 |
Ангина |
Орлова Е.Ю. |
25.01.47 |
1 |
Андреева И.В. |
11.07.98 |
Гастрит |
Быкова А.А. |
01.04.75 |
1 |
Андреева И.В. |
15.06.98 |
ОРЗ |
Дуров М.Т. |
05.03.30 |
2 |
Петрова О.И. |
26.07.98 |
ОРЗ |
БД «Поликлиника»
Фамилия пациента |
Дата рождения |
Номер участка |
Фамилия врача |
Дата посещения |
Диагноз |
Лосев О.И. |
20.04.65 |
2 |
Петрова О.И. |
11.04.98 |
Грипп |
Орлова Е.Ю. |
25.01.47 |
1 |
Андреева И.В. |
05.05.98 |
ОРЗ |
Лосев О.И. |
20.04.65 |
2 |
Петрова О.И. |
26.07.98 |
Бронхит |
Дуров М.Т. |
05.03.30 |
2 |
Петрова О.И. |
14.03.98 |
Стенокардия |
Жукова Л.Г. |
30.01.70 |
2 |
Петрова О.И. |
11.04.98 |
Ангина |
Орлова Е.Ю. |
25.01.47 |
1 |
Андреева И.В. |
11.07.98 |
Гастрит |
Быкова А.А. |
01.04.75 |
1 |
Андреева И.В. |
15.06.98 |
ОРЗ |
Дуров М.Т. |
05.03.30 |
2 |
Петрова О.И. |
26.07.98 |
ОРЗ |
Успеваемость
Ученик |
Русский |
Алгебра |
Химия |
Физика |
История |
Музыка |
Аликин |
4 |
5 |
5 |
4 |
4 |
5 |
Ботов |
3 |
3 |
3 |
3 |
3 |
4 |
Волков |
5 |
5 |
5 |
5 |
5 |
5 |
Галкина |
4 |
4 |
5 |
2 |
4 |
4 |
Факультативы
Фамилия |
Геология |
Цветоводство |
Танцы |
Русаков |
1 |
0 |
1 |
Семёнов |
1 |
1 |
0 |
Зотова |
0 |
1 |
1 |
Шляпина |
0 |
0 |
1 |
Структура БД «Погода»
Главный ключ |
Название поля |
Тип поля |
▲ |
День |
Дата |
|
Осадки |
Символьное |
|
Температура |
Числовое |
|
Давление |
Числовое |
|
Влажность |
Числовое |
РАБОТА 1.
СОЗДАНИЕ ОДНОТАБЛИЧНОЙ БАЗЫ ДАННЫХ
КРАТКАЯ СПРАВКА
Общие сведения
Access - это система управления базами данных (СУБД). Под системой управления понимается комплекс программ, который позволяет не только хранить большие массивы данных в определенном формате, но и обрабатывать их, представляя в удобном для пользователей виде. Access дает возможность также автоматизировать часто выполняемые операции (например, расчет заработной платы, учет материальных ценностей и т.п.). С помощью Access можно не только разрабатывать удобные формы ввода и просмотра данных, но и составлять сложные отчеты.
Access является приложением Windows, а поскольку и Windows и Access разработаны одной фирмой (Microsoft), они очень хорошо взаимодействуют друг с другом. СУБД Access работает под управлением Windows; таким образом, все преимущества Windows доступны в Access, например, вы можете вырезать, копировать и вставлять данные из любого приложения Windows в приложение Access и наоборот.
Access - это реляционная СУБД. Это означает, что с ее помощью можно работать одновременно с несколькими таблицами базы данных. Применение реляционной СУБД помогает упростить структуру данных и таким образом облегчить выполнение работы. Таблицу Access можно связать с данными, хранящимися на другом компьютере или на сервере, а также использовать таблицу, созданную в СУБД Paradox или Dbase. Данные Access очень просто комбинировать с данными Excel.
В СУБД Access предусмотрено много дополнительных сервисных возможностей. Мастера помогут вам создать таблицы, формы или отчеты из имеющихся заготовок, сделав за вас основную черновую работу. Выражения используются в Access, например, для проверки допустимости введенного значения. Макросы позволяют автоматизировать многие процессы без программирования, тогда как встроенный в Access язык VBA (Visual Basic for Applications) - специально разработанный компанией Microsoft диалект языка Basic для использования в приложениях Microsoft Office - дает возможность опытному пользователю программировать сложные процедуры обработки данных. Просматривая свою форму или отчет, вы сможете представить, как они будут выглядеть в распечатанном виде. И наконец, используя такие возможности языка программирования С, как функции и обращения к Windows API (Application Programming Interface - интерфейс прикладных программ Windows), можно написать подпрограмму для взаимодействия Access с другими приложениями - источниками данных.
В Microsoft Access добавлено множество новых средств, разработанных для облегчения работы в Интернет и создания приложений для Web. Для доступа к сети Интернет и использования преимуществ новых средств необходимы средства просмотра Web, например Microsoft Internet Explorer, а также модем. Пользователь имеет возможность непосредственно подключаться к узлам Microsoft Web из программ Office (в том числе и из Access) с помощью команды Microsoft на Web из пункта меню ?. При этом можно, например, получить доступ к техническим ресурсам и загрузить общедоступные программы, не прерывая работу с Access.
Система Access содержит набор инструментов для управления базами данных, включающий конструкторы таблиц, форм, запросов и отчетов. Кроме того, Access можно рассматривать и как среду для разработки приложений. Используя макросы для автоматизации задач, вы можете создавать такие же мощные, ориентированные на пользователя приложения, как и приложения, созданные с помощью "полноценных" языков программирования, дополнять их кнопками, меню и диалоговыми окнами. Программируя на VBA, можно создавать программы, по мощности не уступающие самой Access. Более того, многие средства Access, например мастера и конструкторы, написаны на VBA. Мощность и гибкость системы Access делают ее сегодня одной из лучших программ для управления базами данных.
Работа с мастерами
Мастер (Wizard) - специальная программа, помогающая в решении какой-то задачи или создании объекта определенного типа. Эта программа поможет вам за несколько минут выполнить рутинную работу, на которую без применения этой программы может уйти несколько часов. Программа-мастер задает вопросы о содержании, стиле и формате объекта, а затем создает этот объект без какого-либо вмешательства с вашей стороны. В Access имеется около сотни мастеров, предназначенных для проектирования баз данных, приложений, таблиц, форм, отчетов, графиков, почтовых наклеек, элементов управления и свойств.
Информация для пользователей электронных таблиц
Те, кто знакомы с Excel, заметят, что Access во многом похож на Excel. Прежде всего, обе программы являются продуктами для Windows, следовательно, можно использовать свой опыт применения специфичных для Windows соглашений. Данные таблицы или запроса Access отображаются в виде электронной таблицы, которую принято называть таблицей данных. Вы обнаружите, что размер строк и столбцов таблицы данных можно изменять так же, как в рабочих таблицах Excel. Фактически режим ввода данных Access ничем не отличается от аналогичного режима Excel. Основное различие между таблицей базы данных (БД) и электронной таблицей - в системе адресации; в электронной таблице адресуется каждая ячейка, а в таблице БД - только поля текущей записи. В электронной таблице каждая ячейка обрабатывается индивидуально, а в таблице БД обработка идет по записям, причем записи обрабатываются однотипным образом. Эти упрощения для БД позволяют повысить скорость обработки и количество обслуживаемой информации.
Контекстно-зависимая справка и Помощник
Справочная система фирмы Microsoft является, наверное, лучшей среди аналогичных программ как для новичков, так и для опытных пользователей. Access дает возможность использовать контекстно-зависимую справку, для получения которой достаточно нажать правую клавишу мыши. Какие бы вы ни испытывали затруднения при работе с системой, вам поможет появляющаяся на экране справка по интересующей вас теме. Помимо этого справочная система Access имеет удобные и простые в использовании содержание, предметный указатель, систему поиска, журнал хронологии и закладки. В локализованной версии Access 97(как и во всем Microsoft Office 97) компания Microsoft добавила новое средство - Помощник. Помощник отвечает на вопросы, выдает советы и справки об особенностях используемой программы.
Структура таблицы и типы данных
Все составляющие базы данных, такие, как таблицы, отчеты, запросы, формы и объекты, в Access 97 хранятся в едином дисковом файле. Основным структурным компонентом базы данных является таблица. В таблицах хранятся вводимые нами данные. Внешне каждая таблица Access 97 похожа на таблицы, с которыми мы привыкли работать на бумаге, - она состоит из столбцов, называемых полями, и строк, называемых записями. Каждая запись таблицы содержит всю необходимую информацию об отдельном элементе базы данных. Например, запись о преподавателе может содержать фамилию, имя, отчество, дату рождения, должность и т.п.
При разработке структуры таблицы, прежде всего, необходимо определить названия полей, из которых она должна состоять, типы полей и их размеры. Каждому полю таблицы присваивается уникальное имя, которое не может содержать более 64 символов. Имя желательно делать таким, чтобы функция поля узнавалась по его имени. Далее надо решить, данные какого типа будут содержаться в каждом поле. В Access можно выбирать любые из основных типов данных. Один из этих типов данных должен быть присвоен каждому полю. Значение типа поля может быть задано только в режиме конструктора. Ниже представлены типы данных Access и их описание.
Тип данных |
Описание |
Текстовый (Значение по умолчанию)
|
Текст или числа, не требующие проведения расчетов, например номера телефонов (до 255 знаков)
|
Числовой |
Числовые данные различных форматов, используемые для проведения расчетов
|
Дата/время |
Для хранения информации о дате и времени с 100 по 9999 год включительно
|
Денежный |
Денежные значения и числовые данные, используемые в математических расчетах, проводящихся с точностью до 15 знаков в целой и до 4 знаков в дробной части
|
Поле MEMO |
Для хранения комментариев; до 65535 символов
|
Счетчик |
Специальное числовое поле, в котором Access автоматически присваивает уникальный порядковый номер каждой записи. Значения полей типа счетчика обновлять нельзя
|
Логический |
Может иметь только одно из двух возможных значений (TrueFalse, Да/Нет) |
Поле объекта OLE |
Объект (например, электронная таблица Microsoft Excel, документ Microsoft Word, рисунок, звукозапись или другие данные в двоичном формате), связанный или внедренный в таблицу Access
|
Гиперссылка |
Строка, состоящая из букв и цифр и представляющая адрес гиперссылки. Адрес гиперссылки может состоять максимум из трех частей: текст, выводимый в поле или в элементе управления; путь к файлу (в формате пути UNC) или к странице (адрес URL). Чтобы вставить адрес гиперссылки в поле или в элемент управления, выполните команду Вставка, Гиперссылка |
Мастер подстановок |
Создает поле, в котором предлагается выбор значений из списка или из поля со списком, содержащего набор постоянных значений или значений из другой таблицы. Это в действительности не тип поля, а способ хранения поля |
В Access существует четыре способа создания пустой таблицы:
использование мастера баз данных для создания всей базы данных, содержащей все требуемые отчеты, таблицы и формы, за одну операцию. Мастер баз данных создает новую базу данных, его нельзя использовать для добавления новых таблиц, форм, отчетов в уже существующую базу данных;
мастер таблиц позволяет выбрать поля для данной таблицы из множества определенных ранее таблиц, таких, как деловые контакты, список личного имущества или рецепты;
ввод данных непосредственно в пустую таблицу в режиме таблицы. При сохранении новой таблицы в Access данные анализируются, и каждому полю присваивается необходимый тип данных и формат;
определение всех параметров макета таблицы в режиме конструктора.
Независимо от метода, примененного для создания таблицы, всегда имеется возможность использовать режим конструктора для дальнейшего изменения макета таблицы, например для добавления новых полей, установки значений по умолчанию или для создания масок ввода. Однако только четвертый метод позволяет сразу задать ту структуру таблицы, которая вам нужна, и поэтому далее рассмотрим именно этот метод.
Ввод данных в ячейки таблицы
Ввод данных в ячейки таблицы производится обычным образом - вы переводите курсор в нужную ячейку, т.е. делаете ее активной, и вводите в нее данные (вводить данные в ячейки для поля с типом данных Счетчик не требуется, так как значения в этом поле появляются автоматически при вводе данных в любую другую ячейку данной записи). Особенности ввода следующие: при нажатии клавиши <Del> ячейка очищается; если ввод данных в ячейку прервать, нажав клавишу <Esc>, то восстанавливается старое значение, а если нажать клавиши <Enter> или <Таb>, то в ячейку заносится новое значение. Можно редактировать текущее значение, меняя в нем отдельные символы. Для этого надо в ячейке таблицы дважды щелкнуть мышью или нажать клавишу <F2>. Однако есть одна важная особенность при вводе данных - для некоторых типов данных (числовой, денежный, дата/время, логический) Access автоматически проверяет правильность их ввода. Например, если вы введете букву в ячейку с числовым типом, то Access выдаст сообщение о неправильно введенном значении и не позволит перейти к другой ячейке, пока не будут введены правильные данные.
Для всех типов полей (кроме типов Счетчик и поле объекта OLE) можно самостоятельно задавать ограничения для вводимых данных. Для этого в режиме конструктора надо выбрать вкладку Общие, перевести курсор в поле с именем "Условия на значение" и ввести ограничение на данные. Например, стаж работы вряд ли может быть более 70 лет, и ограничение будет следующее: <70. Ограничение можно вводить и на текстовое поле, Обычно в этом случае задаются слова, которые могут присутствовать в данном поле.
Примечание. Вводить ограничения можно не только вручную, но и с помощью Построителя выражений. При появлении курсора в строке параметра Условия на значение справа от нее появится кнопка с тремя точками. При щелчке по этой кнопке появляется окно построителя выражений (рис. 4.1). Обычно им пользуются для построения сложных выражений, но разобраться в его работе довольно просто при помощи справки, расположенной в этом же окне.
Можно использовать еще один удобный инструмент при вводе данных - параметр Значение по умолчанию (находится также на вкладке Общие). Здесь можно задать данные, которые Access будет вводить по умолчанию при заполнении таблицы. Это удобно использовать, когда большинство значений данного поля одинаковы и лишь некоторые отличаются. Например, должность большинства преподавателей - доцент. Если ввести это слово в строку параметра Значение по умолчанию, то все ячейки поля "Должность" примут значение Доцент и надо будет лишь изменить значения ячеек для преподавателей с другими должностями. Данные можно вводить и копированием их из одной ячейки в другую стандартными средствами Windows.
Для каждого типа данных (кроме типа данных Счетчик) предусмотрено пустое (нулевое) значение. Различают два типа пустых значений: пустые (Null) значения и пустые строки, Если пустое поле имеет пустое (Null) значение, то это означает, что данные для него существуют, но пока не известны. Если же введена пустая строка (два знака прямых кавычек (" ")), то это означает, что данные не существуют вовсе. Access позволяет обрабатывать такие пустые значения.
Рис. 4.1. Окно построителя выражений
Редактирование данных
Редактирование данных производится очень просто - курсор переводится в нужную ячейку, старые данные удаляются (клавишами <Del> или <Backspasе>) и вводятся новые данные. Удалять можно не только данные в ячейках, но и целиком строки, предварительно их выделив. Но если таблица большая, то редактируемые данные надо сначала найти. Это делается следующим образом; переводят курсор в любую ячейку поля, начиная с которой будет вестись поиск, затем открывают пункт меню Правка и выполняют команду Найти. В появившемся окне вводят образец искомых данных и щелкают по кнопке <Найти>. Если значение найдено, курсор перейдет в эту ячейку. Иногда требуется большое количество одинаковых данных заменить на другое значение. Для этого надо открыть пункт меню Правка и выполнить команду Заменить. В появившемся окне ввести образцы того, что надо найти и на что заменить. Затем надо решить, будете ли вы просматривать каждое заменяемое значение или нет. Если будете, то надо щелкнуть по кнопке <3аменить>, а если нет - один раз щелкнуть по кнопке <3аменить все>.
Сортировка данных
Дня удобства просмотра можно сортировать записи в таблице в определенной последовательности, например, в таблице Преподаватели записи можно отсортировать в порядке убывания стажа преподавателей. Кнопки сортировки на панели инструментов (или команды меню Записи, Сортировка, Сортировка по возрастанию (сортировка по убыванию) ) позволяют сортировать столбцы по возрастанию или по убыванию. Прежде чем щелкнуть по кнопке сортировки, следует выбрать поля, используемые для сортировки. Для выбора поля достаточно поместить курсор в любую его запись. После этого щелкните по кнопке сортировки - и данные отобразятся в отсортированном порядке, В режиме таблицы можно выделить сразу два или несколько соседних столбцов, а затем выполнить по ним сортировку. По умолчанию в Access 97 сортировка записей начинается с крайнего левого выделенного столбца. При этом записи таблицы будут отсортированы сначала по крайнему левому выделенному столбцу, затем (для одинаковых значений в первом сортируемом столбце) - по второму и т.д. Если вы хотите восстановить порядок отображения записей, используйте команду Записи, Удалить фильтр.
Примечание. Современные СУБД такие, как Access 97, никогда не сортируют таблицы физически, как это делалось раньше. Средства сортировки данных (а также фильтрации, поиска и замены) реализованы в Access 97 как автоматически создаваемые запросы. Записи таблицы всегда располагаются в файле базы данных в том порядке, в котором они были добавлены в таблицу.
Отбор данных с помощью фильтра
Фильтр - это набор условий, применяемых для отбора подмножества записей. В Access 97 существуют фильтры четырех типов; фильтр по выделенному фрагменту, обычный фильтр, расширенный фильтр и фильтр по вводу.
Фильтр по выделенному фрагменту - это способ быстрого отбора записей по выделенному образцу. Например, вам нужно просмотреть в таблице записи только о доцентах, Выделите слово Доцент в любой из записей. Щелкните по кнопке <Фильтр по выделенному> (или выполните команду Записи, Фильтр, Фильтр по выделенному), и Access выберет только те записи, для которых значение в столбце Должность равно Доцент. Обратите внимание, что в строке состояния окна таблицы присутствует слово Фильтр. В дополнение к этому кнопка <Применить фильтр> (третья кнопка фильтрования, на которой изображена воронка) затенена, а это означает, что используется фильтр. При отключении этой кнопки все фильтры будут сняты. Установки фильтра не пропадут; он просто будет отключен. Фильтр по выделенному может собирать вместе критерии выбора при каждом использовании кнопки <Фильтр по выделенному>. Например, вы поместили курсор в столбец Должность в записи, в которой значение поля равно Доцент, и щелкнули по кнопке <Фильтр по выделенному>. Вы увидите только записи обо всех доцентах. Если затем вы поместите курсор в столбец <Должность> и выделите слово Информатика (конечно, если такая дисциплина присутствует в вашей таблице), а затем щелкните по кнопке <Фильтр по выделенному> появятся только записи о доцентах, которые преподают информатику. Если вы хотите просмотреть значения, которые не удовлетворяют этому критерию, например просмотреть всех преподавателей, кроме доцентов, читающих информатику, щелкните правой кнопкой (курсор мыши должен находиться внутри таблицы) и выберите команду Исключить выделенное. Будут выбраны все записи, кроме недавно выбранных (инверсный выбор).
Фильтрование данных в Access производится с помощью кнопок <Фильтр по выделенному> или <Изменить фильтр> (команда меню Записи, Фильтр, Изменить фильтр). После нажатия второй кнопки от таблицы остается одна запись. Каждое поле становится полем со списком (когда в нем находится курсор), в котором можно выбрать из списка все значения для данного поля. После щелчка по кнопке <Применить фильтр> будут выбраны записи, соответствующие измененному фильтру. Еще более сложные условия фильтрации можно задать командой меню Записи, Фильтр, Расширенный фильтр...
Подготовка к печати
Записи таблицы можно распечатать. Простейший способ сделать это - выбрать команду Файл, Печать или щелкнуть по кнопке <Печать> на панели инструментов. Для распечатки потребуется столько страниц, сколько необходимо для размещения всех данных. Access автоматически подгоняет распечатку на каждой странице. Управлять распечатыванием можно из диалогового окна "Печать", выбирая представленные ниже опции:
Опция |
Назначение |
Печатать |
Распечатывает либо всю таблицу, либо только выбранные страницы, либо выделенные записи |
Копии |
Определяет число копий |
Разобрать |
Определяет, будет ли распечатка разобрана по копиям |
С помощью кнопки <Свойства> можно вывести диалоговое окно настройки принтера. Кнопка <Настройка> позволит определить поля и заголовки.
Перед печатью всегда необходимо просмотреть данные для того, чтобы определить, как будет выглядеть таблица на распечатанной странице. Для этого щелкните по кнопке <Предварительный просмотр> на панели инструментов или выберите команду Файл, Предварительный просмотр. При этом появится окно предварительного просмотра, в котором можно управлять параметрами просмотра.
Ввод и просмотр данных посредством формы
Формы обеспечивают наиболее гибкий способ ввода, редактирования, просмотра и удаления данных и фактически являются шаблонами, управляющими отображением информации. Форма позволяет отображать одновременно все поля одной или нескольких записей. Оптимально построенная форма может вмещать несколько десятков полей на одном экране, а если полей намного больше, то для каждой записи можно создать многостраничную форму. Можно создать форму-меню для вызова других форм, таблиц, запросов или отчетов. В форме каждое поле можно разместить в точно заданном месте, выбрать для него цвет или заливку и добавить элементы управления текстом для эффективного ввода данных.
При вводе данных можно не только помещать вычисляемые поля в форму, но и добавлять расширенные правила проверки корректности ввода и элементы управления (например, переключатели, флажки, раскрывающиеся списки). Линии, рамки, цвета и фоновые изображения улучшают внешний вид данных, облегчают восприятие формы и повышают продуктивность работы. В дополнение к этому OLE-объекгы (такие, как рисунки и графики) можно увидеть только в форме или в отчете.
Создать форму можно несколькими способами. Если вы в режиме базы данных откроете вкладку Формы и щелкните по кнопке <Создать>, то откроется окно, в котором указаны способы создания формы (рис. 4.2).
Конструктор позволит вам создать форму самостоятельно, но это для начинающих пользователей довольно сложно. Мастер форм дает возможность автоматически создать форму на основе выбранных полей. Этот режим наиболее удобен при создании форм как для начинающих, так и для опытных пользователей. Access в режиме диалога выясняет у пользователя, какую форму он хочет получить, и создает ее автоматически. Если вас в этой форме что-либо не удовлетворяет, вы можете исправить это в режиме конструктора. Автоформы являются частными случаями мастера форм, т.е. они автоматически создают заданные виды форм практически без участия
РАБОТА 2.
ФОРМИРОВАНИЕ ЗАПРОСОВ И ОТЧЕТОВ ДЛЯ ОДНОТАБЛИЧНОЙ БАЗЫ ДАННЫХ
КРАТКАЯ СПРАВКА
Формирование запросов на выборку
Запросы являются мощным средством обработки данных, хранимых в таблицах Access 97. С помощью запросов можно просматривать, анализировать и изменять данные из нескольких таблиц. Они также используются в качестве источника данных для форм и отчетов. Запросы позволяют вычислять итоговые значения и выводить их в компактном формате, подобном формату электронной таблицы, а также выполнять, вычисления над группами записей.
Запросы можно создавать самостоятельно и с помощью мастеров. Мастера запросов автоматически выполняют основные действия в зависимости от ответов пользователя на поставленные вопросы. Самостоятельно разработать запросы можно в режиме конструктора.
В Access можно создавать следующие типы запросов:
запрос на выборку;
запрос с параметрами;
перекрестный запрос;
запрос на изменение (запрос на удаление, обновление и добавление записей на создание таблицы);
запросы SQL (запросы на объединение, запросы к серверу, управляющие запросы, подчиненные запросы)
Запрос на выборку используется наиболее часто. При его выполнении данные, удовлетворяющие условиям отбора, выбираются из одной или из нескольких таблиц и выводятся в определенном порядке. Например, можно вывести на экран данные о фамилиях доцентов, стаж которых более 15 лет (на основе таблицы Преподаватели).
Примечание. Простые запросы на выборку практически не отличаются отфильтров. Более того, фильтры можно сохранять как запросы.
Можно также использовать запрос на выборку, чтобы сгруппировать записи для вычисления сумм, средних значений, пересчета и других действий. Например, используя запрос на выборку, можно получить данные о среднем стаже доцентов и профессоров (на основе таблицы Преподаватели).
Запрос с параметрами - это запрос, при выполнении которого в его диалоговом окне пользователю выдается приглашение ввести данные, на основе которых будет выполняться запрос. Например, часто требуются данные о том, какие дисциплины ведут преподаватели. Чтобы не создавать отдельные запросы по каждому преподавателю, можно создать один запрос с параметрами, где в качестве параметра будет использоваться фамилия преподавателя. При каждом вызове этого запроса вам будет предложено ввести фамилию преподавателя, а затем на экран будут выведены все поля, которые вы указали в запросе, например фамилия, имя, отчество преподавателя и читаемая им дисциплина.
Рис. 4.8. Окно выбора вариантов построения запросов
Для создания нового запроса надо в окне базы данных выбрать вкладку Запросы и щелкнуть по кнопке <Создать>. Откроется окно "Новый запрос", вид которого представлен на рис. 4.8.
В окне вы должны выбрать один из пяти пунктов: Конструктор, Простой запрос, Перекрестный запрос, Повторяющиеся записи. Записи без подчиненных. Конструктор позволит вам самостоятельно создать любой тип запроса, но этот режим рекомендуется пользователям, уже имеющим некоторый опыт создания запросов. Простой запрос позволит создать с помощью Мастера запрос на выборку из определенных полей таблиц или других запросов. (Это наилучший способ создания запроса для начинающих пользователей.) Что такое перекрестный запрос, рассматривалось выше. При выборе пункта Повторяющиеся записи будет создан запрос на поиск повторяющихся записей в простой таблице или в запросе, а при выборе пункта Записи без подчиненных - запрос на поиск записей, которым не соответствует ни одна запись в подчиненной таблице. Такой запрос используется для многотабличных баз данных.
У вас может возникнуть вопрос: как создавать запросы с параметрами и запросы на изменение, если при создании запроса они явно не указаны? Следует отметить, что основой для всех этих запросов является запрос на выборку, т.е. сначала необходимо определить набор данных, с которым хотите работать. Затем для созданного запроса на выборку надо перейти в режим конструктора. Задание параметров производится в строке Условия отбора для соответствующих полей. Подробнее это будет рассмотрено ниже при выполнении задания. Для доступа к запросам на изменение надо открыть пункт меню Запрос - в открывшемся списке вы увидите все виды запросов на изменение.
При выполнении запроса на выборку Access 97 извлекает записи из таблиц и формирует результирующий набор данных. Он выглядит, как таблица, хотя и не является ею. Результирующий набор данных является динамическим (или виртуальным) набором записей и не хранится в базе данных.
После закрытия запроса результирующий набор данных этого запроса прекращает свое существование. Хотя сам по себе динамический набор данных больше не существует, помните, что данные, которые в нем содержались, остаются в базовых таблицах.
При сохранении запроса остается только структура запроса - перечень таблиц, список полей, порядок сортировки, ограничения на записи, тип запроса и т.д. При сохранении в базе данных запрос, по сравнению с результирующим набором данных, имеет ряд преимуществ:
на физическом носителе информации (обычно это жесткий диск) требуется меньший объем пространства;
запрос может использовать обновленные версии любых записей, измененных со времени последнего запуска запроса.
При каждом выполнении запрос обращается к базовым таблицам и снова создает результирующий набор данных. Поскольку сам по себе результирующий набор данных не сохраняется, запрос автоматически отображает любые изменения, происшедшие в базовых таблицах с момента последнего запуска этого запроса (даже в реальном времени в многопользовательской среде).
Для сохранения запроса следует выполнить следующие действия. Выполните команду Файл, Сохранить или щелкните по кнопке <Сохранить> на панели инструментов. Если вы впервые сохраняете запрос, введите новое имя запроса в диалоговом окне "Сохранение".
Формирование отчетов
Отчет - это гибкое и эффективное средство для организации просмотра и распечатки итоговой информации. В отчете можно получить результаты сложных расчетов, статистических сравнений, а также поместить в него рисунки и диаграммы.
Пользователь имеет возможность разработать отчет самостоятельно или создать отчет с помощью мастера. Мастер по разработке отчетов выполняет всю рутинную работу и позволяет быстро разработать отчет. После вызова Мастера выводятся диалоговые окна с приглашением ввести необходимые данные, и отчет создается на основании ответов пользователя. Мастер необходим даже для опытных пользователей, так как позволяет быстро разработать макет, служащий основой создаваемого отчета. После этого можно переключиться в режим конструктора и внести изменения в стандартный макет.
При работе с мастером в зависимости от того, какой отчет вы хотите создать (т.е. как вы отвечаете на вопросы мастера) Access предлагает вам различные варианты макетов отчета. Например, если вы создаете простой отчет без группировки данных, то вам предлагается три варианта макета: в столбец, табличный и выровненный. При этом в небольшом окне представляется вид этих макетов. Если вы задаете уровни группировки (т.е. по каким признакам надо сгруппировать данные, например по должности), то вам предлагаются шесть видов макетов. Перечислять их не будем, так как они хорошо проиллюстрированы в окне создания макетов.
Основное различие между отчетами и формами заключается в их назначении. Если формы задуманы преимущественно для ввода данных, то отчеты - для просмотра данных (на экране либо на бумаге). В формах используются вычисляемые поля (обычно с помощью вычислений на основе полей в текущей записи). В отчетах вычисляемые поля (итоги) формируются на основе общей группы записей, страницы записей или всех записей отчета. Все, что можно сделать с формой (за исключением ввода данных), можно сделать и с отчетом. Действительно, форму можно сохранить в виде отчета, а затем изменить элементы управления формы в окне конструктора отчета.
Для создания отчета надо открыть вкладку Отчеты и щелкнуть по кнопке <Создать>. Откроется окно "Новый отчет", в котором приведены шесть пунктов меню, т.е. шесть способов создания отчета: Конструктор, Мастер отчетов, Автоотчет в столбец. Автоотчет ленточный, Мастер диаграмм и Почтовые наклейки. Конструктор позволит вам самостоятельно создать отчет, но это непросто даже для опытного пользователя. Мастер отчетов автоматически создаст отчет на основе выбранных вами полей таблиц (запросов) и макетов отчетов. Этот способ создания отчетов является наиболее удобным как для начинающих, так и для опытных пользователей. Автоотчет в столбец и Автоотчет ленточный - самые простейшие способы создания отчетов: достаточно указать только имя таблицы (запроса), на основе которого будет создан отчет, а остальное сделает мастер отчетов. Мастер диаграмм поможет создать отчет в виде диаграммы, а Почтовые наклейки создадут отчет, отформатированный для печати почтовых наклеек.
ЗАДАНИЕ 1
Формирование запросов на выборку.
1. На основе таблицы Преподаватели создайте простой запрос на выборку, в котором должны отображаться фамилии, имена, отчества преподавателей и их должность.
2. Данные запроса отсортируйте по должностям.
3. Сохраните запрос.
4. Создайте запрос на выборку с параметром, в котором должны отображаться фамилии, имена, отчества преподавателей и преподаваемые ими дисциплины, а в качестве параметра задайте фамилию преподавателя и выполните этот запрос для преподавателя Гришина.
ТЕХНОЛОГИЯ РАБОТЫ
1. Для создания простого запроса:
в окне базы данных откройте вкладку Запросы;
в открывшемся окне щелкните по кнопке <Создать>;
из появившихся пунктов окна "Новый запрос" выберите Простой запрос и щелкните по кнопке <ОК>;
в появившемся окне в строке Таблицы/запросы выберите таблицу Преподаватели (если других таблиц или запросов не было создано, она будет одна в открывающемся списке);
в окне "Доступные поля" переведите выделение на параметр Фамилия,
щелкните по кнопке. Слово Фамилия перейдет в окно "Выбранные поля";
аналогично в окно "Выбранные поля" переведите поля "Имя", "Отчество", "Должность" (порядок важен - в таком порядке данные и будут выводиться);
щелкните по кнопке. <Далее>;
в строке параметра Задайте имя запроса введите новое имя Должности преподавателей;
щелкните по кнопке <Готово>. На экране появится таблица с результатами запроса.
2. Для сортировки данных:
щелкните в любойстроке поля "Должность";
отсортируйте данные по убыванию. Для этого щелкните по кнопке на панели инструментов или выполните команду Записи, Сортировка, Сортировка по убыванию.
3. Для сохранения запроса:
щелкните по кнопке или выполните команду Файл, Сохранить;
закройте окно запроса.
4. Длясоздания запроса на выборку с параметром:
создайте запрос на выборку для следующих полей таблицы Преподаватели: "Фамилия", "Имя", "Отчество", "Преподаваемая дисциплина". Запрос создавайте аналогично тому, как это делалось в п.1;
задайте имя запросу Преподаваемые дисциплины;
щелкните по кнопке <Готово>. На экране появится таблица с результатами запроса;
перейдите в режиме конструктора, щелкнув по кнопке или выполнив команду Вид, Конструктор;
в строке параметра Условия отбора для поля "Фамилия" введите фразу (скобки тоже вводить): [Введите фамилию преподавателя]
выполните запрос, щелкнув по кнопке на панели инструментов или выполнив команду Запрос, Запуск;
Примечание. Вышеописанным способом запрос выполняется только в режиме конструктора. Для того чтобы выполнить запрос из другого режима, надо открыть вкладку Запросы, выделить требуемый запрос и щелкнуть по кнопке <Открыть>.
в появившемся окне введите фамилию Гришин и щелкните по кнопке <ОК>. На экране появится таблица с данными о преподавателе Гришине - его имя, отчество и преподаваемая им дисциплина;
сохраните запрос;
закройте окно запроса.
ЗАДАНИЕ 2
На основе таблицы Преподаватели создайте отчет с группированием данных по должностям.
ТЕХНОЛОГИЯ РАБОТЫ
Для создания отчета:
откройтевкладку Отчеты и щелкните по кнопке <Создать>;
в открывшемся окне выберите пункт Мастер отчетов;
щелкните по значку раскрывающегося списка в нижней части окна;
выберите из появившегося списка таблицу Преподаватели;
щелкните по кнопке <OK>, В появившемся окне выберите поля, которые будут присутствовать в форме. В данном примере присутствовать будут все поля из таблицы, поэтому щелкните по кнопке
щелкните по кнопке <Далее>;
в появившемся окне присутствует перечень полей. Переведите выделение на поле "Должность";
щелкните по кнопке. Таким образом вы задаете группировку данных по должности;
щелкните по кнопке <Далее>;
параметры появившегося окна оставим без изменений, поэтому щелкните по кнопке <Далее>;
в появившемся окне выберите стиль оформления отчета;
щелкните по кнопке. <Далее>;
в появившемся окне введите название отчета Преподаватели;
щелкните по кнопке <Готово>. На экране появится сформированный отчет;
просмотрите, а затем закройте отчет.
РАБОТА 3.
РАЗРАБОТКА ИНФОЛОГИЧЕСКОЙ МОДЕЛИ И СОЗДАНИЕ СТРУКТУРЫ РЕЛЯЦИОННОЙ БАЗЫ ДАННЫХ
КРАТКАЯ СПРАВКА
Организация данных
Слово "реляционная" происходит от английского relation - отношение. Отношение - тематическое понятие, но в терминологии моделей данных отношения удобно изображать в виде таблицы. При этом строки таблицы соответствуют кортежам отношения, а столбцы - атрибутам. Ключом называют любую функцию от атрибутов кортежа, которая может быть использована для идентификации кортежа. Такая функция может быть значением одного, из атрибутов (простой ключ), задаваться алгебраическим выражением, включающим значения нескольких атрибутов (составной ключ). Это означает, что данные в строках каждого из столбцов составного ключа могут повторяться, но комбинация данных каждой строки этих столбцов является уникальной. Например, в таблице Студенты есть столбцы Фамилии и Год рождения. В каждом из столбцов есть некоторые повторяющиеся данные, т.е. одинаковые фамилии и одинаковые года рождения. Но если студенты, имеющие одинаковые фамилии, имеют разные года рождения, то эти столбцы можно использовать в качестве составного ключа. Как правило, ключ является уникальным, т.е. каждый кортеж определяется значением ключа однозначно, но иногда используют и неуникальные ключи (ключи с повторениями). В локализованной (русифицированной) версии Access 97 вводится термин ключевое поле, которое можно трактовать как первичный ключ.
В Access можно выделить три типа ключевых полей: простой ключ, составной ключ и внешний ключ.
Одно из важнейших достоинств реляционных баз данных состоит в том, что вы можете хранить логически сгруппированные данные в разных таблицах и задавать связи между ними, объединяя их в единую базу. Для задания связи таблицы должны иметь поля с одинаковыми именами или хотя бы с одинаковыми форматами данных. Связь между таблицами устанавливает отношения между совпадающими значениями в этих полях. Такая организация данных позволяет уменьшить избыточность хранимых данных, упрощает их ввод и организацию запросов и отчетов. Поясним это на примере. Допустим, вам в базе надо хранить, данные о студентах (фамилия, изучаемая дисциплина) и преподавателях (фамилия, номер кафедры, ученая степень, преподаваемая дисциплина). Если хранить данные в одной таблице, то в строке с фамилией студента, изучающего конкретную дисциплину, будут храниться все атрибуты преподавателя, читающего эту дисциплину. Это же огромная избыточность данных. А если хранить данные о студенте в одной таблице, о преподавателе - в другой и установить связь между полями "Читаемая дисциплина" - "Изучаемая дисциплина" (фактически это одинаковые поля), то избыточность хранимых данных многократно уменьшится без ущерба для логической организации информации.
В Access можно задать три вида связей между таблицами; Один-ко-многим,, Многие-ко-многим и Один-к-одному.
Связь Один-ко-многим - наиболее часто используемый тип связи между таблицами. В такой связи каждой записи в таблице А может соответствовать несколько записей в таблице В (поля с этими записями называют внешними ключами), а запись в таблице В не может иметь более одной соответствующей ей записи в таблице А.
При связи Многие-ко-многим одной записи в таблице А может соответствовать несколько записей в таблице В, а одной записи в таблице В - несколько записей в таблице А. Такая схема реализуется только с помощью третьей (связующей) таблицы, ключ которой состоит по крайней мере из двух полей, одно из которых является общим с таблицей А, а другое - общим с таблицей В.
При связи Один-к-одному запись в таблице А может иметь не более одной связанной записи в таблице В и наоборот. Этот тип связи используют не очень часто, поскольку такие данные могут быть помещены в одну таблицу. Связь с отношением Один-к-одному применяют для разделения очень широких таблиц, для отделения части таблицы в целях ее защиты, а также для сохранения сведений, относящихся к подмножеству записей в главной таблице.
Тип создаваемой связи зависит от полей, для которых определяется связь:
связь Один-ко-многим создается в том случае, когда только одно из полей является ключевым или имеет уникальный индекс, т.е. значения в нем не повторяются;
связь Один-к-одному создается в том случае, когда оба связываемых поля являются ключевыми или имеют уникальные индексы;
связь Многие-ко-многим фактически представляет две связи типа один-ко-многим через третью таблицу, ключ которой состоит, по крайней мере, из двух полей, общих для двух других таблиц.
Целостность данных
Целостность данных означает систему правил, используемых в СУБД Access для поддержания связей между записями в связанных таблицах (таблиц, объединенных с помощью связи), а также обеспечивает защиту от случайного удаления или изменения связанных данных. Контролировать целостность данных можно, если выполнены следующие условия:
связанное поле (поле, посредством которого осуществляется связь) одной таблицы является ключевым полем или имеет уникальный индекс;
связанные поля имеют один тип данных. Здесь существует исключение. Поле счетчика может быть связано с числовым полем, если оно имеет тип Длинное целое,
обе таблицы принадлежат одной базе данных Access. Если таблицы являются связанными, то они должны быть таблицами Access. Для установки целостности данных база данных, в которой находятся таблицы, должна быть открыта. Для связанных таблиц из баз данных других форматов установить целостность данных невозможно.
ЗАДАНИЕ 1
Создание инфологической и логической моделей базы данных.
1. Разработайте информационно-логическую модель реляционной базыданных.
2. Разработайте логическую модель реляционной базы данных
ТЕХНОЛОГИЯ РАБОТЫ
1. Перед разработкой информационно-логической модели реляционной базы данных рассмотрим, из каких информационных объектов должна состоять эта база данных. Можно выделить три объекта, которые не будут обладать избыточностью, - Студенты, Дисциплины и Преподаватели. Представим состав реквизитов этих объектов в виде "название объекта (перечень реквизитов)": Студенты (код студента, фамилия, имя, отчество, номер группы, дата рождения, стипендия, оценки). Дисциплины (код дисциплины, название дисциплины), Преподаватели (код преподавателя, фамилия, имя, отчество, дата рождения, телефон, заработная плата).
Рассмотрим связь между объектами Студенты и Дисциплины. Студент изучает несколько дисциплин, что соответствует многозначной связи и отражено на рис. 4.9 двойной стрелкой. Понятно, что каждая дисциплина изучается множеством студентов. Это тоже многозначная связь, обозначаемая двойной стрелкой (связь "один" обозначена одинарной стрелкой). Таким образом, связь между объектами Студенты и Дисциплины - Многие-ко-многим (М : N).
Рис.4.9. Типы связей между объектами Студенты, Дисциплины и Преподаватели.
Множественные связи усложняют управление базой данных, например, в СУБД Access 97 при множественных связях нельзя использовать механизм каскадного обновления. Поэтому использовать такие связи нежелательно и нужно строить реляционную модель, не содержащую связей типа Многие-ко-многим. В Access 97 дня контроля целостности данных с возможностью каскадного обновления и удаления данных необходимо создать вспомогательный объект связи, который состоит из ключевых реквизитов связываемых объектов и который может быть дополнен описательными реквизитами. В нашем случае таким новым объектом для связи служит объект Оценки, реквизитами которого являются код студента, код дисциплины и оценки. Каждый студент имеет оценки по нескольким дисциплинам, поэтому связь между объектами Студенты и Оценки будет Один-ко-многим (1:М). Каждую дисциплину сдает множество студентов, поэтому связь между объектами Дисциплины и Оценки также будет Один-ко-многим (1:М). В результате получаем информационно-логическую модель базы данных, приведенную на рис. 4.10.
Рис. 4.10. Информационно-логическая модель реляционной базы данных
2. В реляционной базе данных в качестве объектов рассматриваются отношения, которые можно представить в виде таблиц. Таблицы между собой связываются посредством общих полей, т.е. одинаковых по форматам и, как правило, по названию, имеющихся в обеих таблицах. Рассмотрим, какие общие поля надо ввести в таблицы для обеспечения связности данных. В таблицах Студенты и Оценки таким полем будет "Код студента", в таблицах Дисциплины и Оценки - "Код дисциплины", в таблицах Преподаватели и Дисциплины - "Код дисциплины". Выбор цифровых кодов вместо фамилий или названий дисциплин обусловлен меньшим объемом информации в таких полях: например, число "2". по количеству символов значительно меньше слова "математика". В соответствии с этим логическая модель базы данных представлена на рис. 4.11, где жирными буквами выделены ключевые поля.
Рис. 4.11. Логическая модель базы данных
ЗАДАНИЕ 2
Создание реляционной базы данных.
1.Создайте базуданных Деканат.
2.Создайте структуру таблицы Студенты.
3.Создайте структуру таблицы Дисциплины.
4. Измените структуру таблицы Преподаватели.
5. Создайте структуру таблицы Оценки.
6. Разработайте схему данных, т.е. создайте связи между таблицами.
ТЕХНОЛОГИЯ РАБОТЫ
1. Создайте базу данных Деканат, выполнив следующие действия:
загрузите Access, в появившемся окне выберите пункт Новая база данных, затем щелкните по кнопке <ОК>;
в окне <Файл новой базы данных> задайте имя (пункт Имя файла) и выберите папку (пункт Папка), где ваша база будет находиться. По умолчанию Access предлагает имя базы dbl, а тип файла - Базы данных Access. Имя задайте Деканат, а тип файла оставьте прежним, так как другие типы файлов нужны в специальных случаях;
щелкните по кнопке <Создать>
2. Создайте структуру таблицы Студенты. Для этого:
в окне базы данных выберите вкладку Таблицы, а затем щелкните по кнопке <Создать>;
в окне "Новая таблица" выберите пункт Конструктор и щелкните по кнопке <ОК>. В результате проделанных операций открывается окно таблицы в режиме конструктора, в котором следует определить поля таблицы;
определите поля таблицы в соответствии с табл.4.3;
в качестве ключевого поля задайте "Код студента". Для этого щелкните по полю "Код студента" и по кнопке на панели инструментов или выполните команду Правка, Ключевое поле;
закройте таблицу, задав ей имя Студенты.
Примечание.Заполнять таблицу данными пока не требуется, это будет сделано в режиме формы.
3. Создайте структуру таблицы Дисциплины аналогично п. 2 в соответствии с табл. 4.4.
Таблица 4.4
В качестве ключевого поля задайте "Код дисциплины". Заполняться эта таблица будет также в режиме формы.
4. Структура таблицы Преподаватели уже создана в работе 1 и заполнена данными, этому для работы используйте эту таблицу с одним лишь изменением - в соответствии с рис. 4.11 в структуру таблицы надо добавить поле "Код дисциплины" и заполнить его в соответствии с данными табл. 4.4.
5. Создайте структуру таблицы Оценки аналогично п. 2 в соответствии с табл. 4.5.
Таблица 4.5
В этой таблице задавать ключевое поле не надо, так как данные во всех полях могут повторяться. Эта таблица, аналогично предыдущим, будет заполняться в режиме формы.
6. Разработайте схему данных, т.е. создайте связи между таблицами. Для этого:
щелкните по кнопке на панели инструментов или выполните команду Сервис, Схема данных. На экране появится окно "Схема данных";
щелкните по кнопке на панели инструментов или выполните команду Связи, Добавить таблицу;
в появившемся окне будет выделено название одной таблицы. Щелкните по кнопке <Добавить>;
переведите выделение на имя следующей таблицы и щелкните по кнопке <Добавить>. Аналогично добавьте оставшиеся две таблицы;
закройте окно, щелкнув по кнопке <3акрыть>;
создайте связь между таблицами Дисциплины и Оценки. Для этого подведите курсор мыши к полю "Код дисциплины" в таблице Дисциплины щелкните левой кнопкой мыши и, не отпуская ее, перетащите курсор на поле "Код дисциплины" в таблицу Оценки, а затем отпустите кнопку мыши. На экране откроется окно "Связи";
установите флажок ("галочку") в свойстве Обеспечение целостности данных, щелкнув по нему;
установите флажок в свойстве Каскадное обновление связанных полей и Каскадное удаление связанных записей;
Примечание.Задание каскадного обновления связанных полей и каскадного удаления связанных записей позволит вам отредактировать записи только в таблице Дисциплины, а в таблице Оценки эти действия будут со связанными записями выполняться автоматически. Например, если вы удалите из таблицы Дисциплины один предмет, то в таблице Оценки удалятся все строки, связанные с этим предметом.
щелкните по кнопке <Создать>. Связь будет создана;
аналогично создайте связи между полем "Код дисциплины" в таблице Дисциплины и полем "Код дисциплины" в таблице Преподаватели, а также между полем "Код студента" в таблице Студенты и полем "Код студента" в таблице Оценки. Результат представлен на рис. 4.12;
закройте окно схемы данных, ответив ДА на вопрос о сохранении макета.
Рис. 4.12. Структура таблицы Студенты
ЗАДАНИЕ 3
Создание форм для ввода данных в таблицы.
1. Создайте форму Студенты.
2. Заполните данными таблицу Студенты посредством формы Студенты.
3. Создайте форму Дисциплины.
4. Заполните данными таблицу Дисциплины посредством формы Дисциплины.
5. Создайте форму Оценки.
6. Заполните данными таблицу Оценки посредством формы Оценки.
ТЕХНОЛОГИЯ РАБОТЫ
1. Для создания формы Студенты:
откройте вкладку Формы;
щелкните по кнопке <Создать>;
в открывающемся списке выберите таблицу Студенты,
выберите пункт Автоформа: ленточная;
щелкните по кнопке <ОК>. Форма для ввода данных создана;
Примечание. Если вас не удовлетворяет макет, вы можете перейти в режим конструктора и изменить макет, передвигая и изменяя размеры элементов - заголовков полей и ячеек для ввода данных. Достаточно щелкнуть по элементу - он выделяется прямоугольной рамкой, и вы можете изменять размеры и двигать элемент. Если вы хотите изменить другие параметры элемента, надо, по выделенному элементу щелкнуть правой клавишей мыши, и откроется окно свойств элемента. В силу ограниченности объема раздела описать все свойства нет возможности, но их можно изучить самостоятельно по справочной системе, а многие свойства понятны уже из своего названия.
2. Заполните данными, приведенными в табл. 4.6, таблицу Студенты посредством формы.
Таблица 4.6
Примечание. Переход между ячейками лучше выполнять клавишей <Таb> либо мышью. Существуют и другие варианты перехода по строкам или полям с помощью различных клавиш и их комбинаций. Обычно их используют опытные пользователи, не любящиеработать с мышью.
Закройте форму, задав ей имя Студенты.
3. Создайте форму Дисциплины аналогично п.1.
4. Заполните данными, приведенными в табл. 4.7, таблицу Дисциплины посредством, формы и закройте форму, задав ей имя Дисциплины.
5. Создайте форму Дисциплины аналогично п. 1.
6. Заполните данными, приведенными в табл. 4.8, таблицу Оценки. Посредством формы закройте форму, задав ей имя Оценки.
Таблица.4.8.
РАБОТА 3.
РАЗРАБОТКА ИНФОЛОГИЧЕСКОЙ МОДЕЛИ И СОЗДАНИЕ СТРУКТУРЫ РЕЛЯЦИОННОЙ БАЗЫ ДАННЫХ
КРАТКАЯ СПРАВКА
Организация данных
Слово "реляционная" происходит от английского relation - отношение. Отношение - тематическое понятие, но в терминологии моделей данных отношения удобно изображать в виде таблицы. При этом строки таблицы соответствуют кортежам отношения, а столбцы - атрибутам. Ключом называют любую функцию от атрибутов кортежа, которая может быть использована для идентификации кортежа. Такая функция может быть значением одного, из атрибутов (простой ключ), задаваться алгебраическим выражением, включающим значения нескольких атрибутов (составной ключ). Это означает, что данные в строках каждого из столбцов составного ключа могут повторяться, но комбинация данных каждой строки этих столбцов является уникальной. Например, в таблице Студенты есть столбцы Фамилии и Год рождения. В каждом из столбцов есть некоторые повторяющиеся данные, т.е. одинаковые фамилии и одинаковые года рождения. Но если студенты, имеющие одинаковые фамилии, имеют разные года рождения, то эти столбцы можно использовать в качестве составного ключа. Как правило, ключ является уникальным, т.е. каждый кортеж определяется значением ключа однозначно, но иногда используют и неуникальные ключи (ключи с повторениями). В локализованной (русифицированной) версии Access 97 вводится термин ключевое поле, которое можно трактовать как первичный ключ.
В Access можно выделить три типа ключевых полей: простой ключ, составной ключ и внешний ключ.
Одно из важнейших достоинств реляционных баз данных состоит в том, что вы можете хранить логически сгруппированные данные в разных таблицах и задавать связи между ними, объединяя их в единую базу. Для задания связи таблицы должны иметь поля с одинаковыми именами или хотя бы с одинаковыми форматами данных. Связь между таблицами устанавливает отношения между совпадающими значениями в этих полях. Такая организация данных позволяет уменьшить избыточность хранимых данных, упрощает их ввод и организацию запросов и отчетов. Поясним это на примере. Допустим, вам в базе надо хранить, данные о студентах (фамилия, изучаемая дисциплина) и преподавателях (фамилия, номер кафедры, ученая степень, преподаваемая дисциплина). Если хранить данные в одной таблице, то в строке с фамилией студента, изучающего конкретную дисциплину, будут храниться все атрибуты преподавателя, читающего эту дисциплину. Это же огромная избыточность данных. А если хранить данные о студенте в одной таблице, о преподавателе - в другой и установить связь между полями "Читаемая дисциплина" - "Изучаемая дисциплина" (фактически это одинаковые поля), то избыточность хранимых данных многократно уменьшится без ущерба для логической организации информации.
В Access можно задать три вида связей между таблицами; Один-ко-многим,, Многие-ко-многим и Один-к-одному.
Связь Один-ко-многим - наиболее часто используемый тип связи между таблицами. В такой связи каждой записи в таблице А может соответствовать несколько записей в таблице В (поля с этими записями называют внешними ключами), а запись в таблице В не может иметь более одной соответствующей ей записи в таблице А.
При связи Многие-ко-многим одной записи в таблице А может соответствовать несколько записей в таблице В, а одной записи в таблице В - несколько записей в таблице А. Такая схема реализуется только с помощью третьей (связующей) таблицы, ключ которой состоит по крайней мере из двух полей, одно из которых является общим с таблицей А, а другое - общим с таблицей В.
При связи Один-к-одному запись в таблице А может иметь не более одной связанной записи в таблице В и наоборот. Этот тип связи используют не очень часто, поскольку такие данные могут быть помещены в одну таблицу. Связь с отношением Один-к-одному применяют для разделения очень широких таблиц, для отделения части таблицы в целях ее защиты, а также для сохранения сведений, относящихся к подмножеству записей в главной таблице.
Тип создаваемой связи зависит от полей, для которых определяется связь:
связь Один-ко-многим создается в том случае, когда только одно из полей является ключевым или имеет уникальный индекс, т.е. значения в нем не повторяются;
связь Один-к-одному создается в том случае, когда оба связываемых поля являются ключевыми или имеют уникальные индексы;
связь Многие-ко-многим фактически представляет две связи типа один-ко-многим через третью таблицу, ключ которой состоит, по крайней мере, из двух полей, общих для двух других таблиц.
Целостность данных
Целостность данных означает систему правил, используемых в СУБД Access для поддержания связей между записями в связанных таблицах (таблиц, объединенных с помощью связи), а также обеспечивает защиту от случайного удаления или изменения связанных данных. Контролировать целостность данных можно, если выполнены следующие условия:
связанное поле (поле, посредством которого осуществляется связь) одной таблицы является ключевым полем или имеет уникальный индекс;
связанные поля имеют один тип данных. Здесь существует исключение. Поле счетчика может быть связано с числовым полем, если оно имеет тип Длинное целое,
обе таблицы принадлежат одной базе данных Access. Если таблицы являются связанными, то они должны быть таблицами Access. Для установки целостности данных база данных, в которой находятся таблицы, должна быть открыта. Для связанных таблиц из баз данных других форматов установить целостность данных невозможно.
ЗАДАНИЕ 1
Создание инфологической и логической моделей базы данных.
1. Разработайте информационно-логическую модель реляционной базыданных.
2. Разработайте логическую модель реляционной базы данных
ТЕХНОЛОГИЯ РАБОТЫ
1. Перед разработкой информационно-логической модели реляционной базы данных рассмотрим, из каких информационных объектов должна состоять эта база данных. Можно выделить три объекта, которые не будут обладать избыточностью, - Студенты, Дисциплины и Преподаватели. Представим состав реквизитов этих объектов в виде "название объекта (перечень реквизитов)": Студенты (код студента, фамилия, имя, отчество, номер группы, дата рождения, стипендия, оценки). Дисциплины (код дисциплины, название дисциплины), Преподаватели (код преподавателя, фамилия, имя, отчество, дата рождения, телефон, заработная плата).
Рассмотрим связь между объектами Студенты и Дисциплины. Студент изучает несколько дисциплин, что соответствует многозначной связи и отражено на рис. 4.9 двойной стрелкой. Понятно, что каждая дисциплина изучается множеством студентов. Это тоже многозначная связь, обозначаемая двойной стрелкой (связь "один" обозначена одинарной стрелкой). Таким образом, связь между объектами Студенты и Дисциплины - Многие-ко-многим (М : N).
Рис.4.9. Типы связей между объектами Студенты, Дисциплины и Преподаватели.
Множественные связи усложняют управление базой данных, например, в СУБД Access 97 при множественных связях нельзя использовать механизм каскадного обновления. Поэтому использовать такие связи нежелательно и нужно строить реляционную модель, не содержащую связей типа Многие-ко-многим. В Access 97 дня контроля целостности данных с возможностью каскадного обновления и удаления данных необходимо создать вспомогательный объект связи, который состоит из ключевых реквизитов связываемых объектов и который может быть дополнен описательными реквизитами. В нашем случае таким новым объектом для связи служит объект Оценки, реквизитами которого являются код студента, код дисциплины и оценки. Каждый студент имеет оценки по нескольким дисциплинам, поэтому связь между объектами Студенты и Оценки будет Один-ко-многим (1:М). Каждую дисциплину сдает множество студентов, поэтому связь между объектами Дисциплины и Оценки также будет Один-ко-многим (1:М). В результате получаем информационно-логическую модель базы данных, приведенную на рис. 4.10.
Рис. 4.10. Информационно-логическая модель реляционной базы данных
2. В реляционной базе данных в качестве объектов рассматриваются отношения, которые можно представить в виде таблиц. Таблицы между собой связываются посредством общих полей, т.е. одинаковых по форматам и, как правило, по названию, имеющихся в обеих таблицах. Рассмотрим, какие общие поля надо ввести в таблицы для обеспечения связности данных. В таблицах Студенты и Оценки таким полем будет "Код студента", в таблицах Дисциплины и Оценки - "Код дисциплины", в таблицах Преподаватели и Дисциплины - "Код дисциплины". Выбор цифровых кодов вместо фамилий или названий дисциплин обусловлен меньшим объемом информации в таких полях: например, число "2". по количеству символов значительно меньше слова "математика". В соответствии с этим логическая модель базы данных представлена на рис. 4.11, где жирными буквами выделены ключевые поля.
Рис. 4.11. Логическая модель базы данных
ЗАДАНИЕ 2
Создание реляционной базы данных.
1.Создайте базуданных Деканат.
2.Создайте структуру таблицы Студенты.
3.Создайте структуру таблицы Дисциплины.
4. Измените структуру таблицы Преподаватели.
5. Создайте структуру таблицы Оценки.
6. Разработайте схему данных, т.е. создайте связи между таблицами.
ТЕХНОЛОГИЯ РАБОТЫ
1. Создайте базу данных Деканат, выполнив следующие действия:
загрузите Access, в появившемся окне выберите пункт Новая база данных, затем щелкните по кнопке <ОК>;
в окне <Файл новой базы данных> задайте имя (пункт Имя файла) и выберите папку (пункт Папка), где ваша база будет находиться. По умолчанию Access предлагает имя базы dbl, а тип файла - Базы данных Access. Имя задайте Деканат, а тип файла оставьте прежним, так как другие типы файлов нужны в специальных случаях;
щелкните по кнопке <Создать>
2. Создайте структуру таблицы Студенты. Для этого:
в окне базы данных выберите вкладку Таблицы, а затем щелкните по кнопке <Создать>;
в окне "Новая таблица" выберите пункт Конструктор и щелкните по кнопке <ОК>. В результате проделанных операций открывается окно таблицы в режиме конструктора, в котором следует определить поля таблицы;
определите поля таблицы в соответствии с табл.4.3;
в качестве ключевого поля задайте "Код студента". Для этого щелкните по полю "Код студента" и по кнопке на панели инструментов или выполните команду Правка, Ключевое поле;
закройте таблицу, задав ей имя Студенты.
Примечание.Заполнять таблицу данными пока не требуется, это будет сделано в режиме формы.
3. Создайте структуру таблицы Дисциплины аналогично п. 2 в соответствии с табл. 4.4.
Таблица 4.4
В качестве ключевого поля задайте "Код дисциплины". Заполняться эта таблица будет также в режиме формы.
4. Структура таблицы Преподаватели уже создана в работе 1 и заполнена данными, этому для работы используйте эту таблицу с одним лишь изменением - в соответствии с рис. 4.11 в структуру таблицы надо добавить поле "Код дисциплины" и заполнить его в соответствии с данными табл. 4.4.
5. Создайте структуру таблицы Оценки аналогично п. 2 в соответствии с табл. 4.5.
Таблица 4.5
В этой таблице задавать ключевое поле не надо, так как данные во всех полях могут повторяться. Эта таблица, аналогично предыдущим, будет заполняться в режиме формы.
6. Разработайте схему данных, т.е. создайте связи между таблицами. Для этого:
щелкните по кнопке на панели инструментов или выполните команду Сервис, Схема данных. На экране появится окно "Схема данных";
щелкните по кнопке на панели инструментов или выполните команду Связи, Добавить таблицу;
в появившемся окне будет выделено название одной таблицы. Щелкните по кнопке <Добавить>;
переведите выделение на имя следующей таблицы и щелкните по кнопке <Добавить>. Аналогично добавьте оставшиеся две таблицы;
закройте окно, щелкнув по кнопке <3акрыть>;
создайте связь между таблицами Дисциплины и Оценки. Для этого подведите курсор мыши к полю "Код дисциплины" в таблице Дисциплины щелкните левой кнопкой мыши и, не отпуская ее, перетащите курсор на поле "Код дисциплины" в таблицу Оценки, а затем отпустите кнопку мыши. На экране откроется окно "Связи";
установите флажок ("галочку") в свойстве Обеспечение целостности данных, щелкнув по нему;
установите флажок в свойстве Каскадное обновление связанных полей и Каскадное удаление связанных записей;
Примечание.Задание каскадного обновления связанных полей и каскадного удаления связанных записей позволит вам отредактировать записи только в таблице Дисциплины, а в таблице Оценки эти действия будут со связанными записями выполняться автоматически. Например, если вы удалите из таблицы Дисциплины один предмет, то в таблице Оценки удалятся все строки, связанные с этим предметом.
щелкните по кнопке <Создать>. Связь будет создана;
аналогично создайте связи между полем "Код дисциплины" в таблице Дисциплины и полем "Код дисциплины" в таблице Преподаватели, а также между полем "Код студента" в таблице Студенты и полем "Код студента" в таблице Оценки. Результат представлен на рис. 4.12;
закройте окно схемы данных, ответив ДА на вопрос о сохранении макета.
Рис. 4.12. Структура таблицы Студенты
ЗАДАНИЕ 3
Создание форм для ввода данных в таблицы.
1. Создайте форму Студенты.
2. Заполните данными таблицу Студенты посредством формы Студенты.
3. Создайте форму Дисциплины.
4. Заполните данными таблицу Дисциплины посредством формы Дисциплины.
5. Создайте форму Оценки.
6. Заполните данными таблицу Оценки посредством формы Оценки.
ТЕХНОЛОГИЯ РАБОТЫ
1. Для создания формы Студенты:
откройте вкладку Формы;
щелкните по кнопке <Создать>;
в открывающемся списке выберите таблицу Студенты,
выберите пункт Автоформа: ленточная;
щелкните по кнопке <ОК>. Форма для ввода данных создана;
Примечание. Если вас не удовлетворяет макет, вы можете перейти в режим конструктора и изменить макет, передвигая и изменяя размеры элементов - заголовков полей и ячеек для ввода данных. Достаточно щелкнуть по элементу - он выделяется прямоугольной рамкой, и вы можете изменять размеры и двигать элемент. Если вы хотите изменить другие параметры элемента, надо, по выделенному элементу щелкнуть правой клавишей мыши, и откроется окно свойств элемента. В силу ограниченности объема раздела описать все свойства нет возможности, но их можно изучить самостоятельно по справочной системе, а многие свойства понятны уже из своего названия.
2. Заполните данными, приведенными в табл. 4.6, таблицу Студенты посредством формы.
Таблица 4.6
Примечание. Переход между ячейками лучше выполнять клавишей <Таb> либо мышью. Существуют и другие варианты перехода по строкам или полям с помощью различных клавиш и их комбинаций. Обычно их используют опытные пользователи, не любящиеработать с мышью.
Закройте форму, задав ей имя Студенты.
3. Создайте форму Дисциплины аналогично п.1.
4. Заполните данными, приведенными в табл. 4.7, таблицу Дисциплины посредством, формы и закройте форму, задав ей имя Дисциплины.
5. Создайте форму Дисциплины аналогично п. 1.
6. Заполните данными, приведенными в табл. 4.8, таблицу Оценки. Посредством формы закройте форму, задав ей имя Оценки.
Таблица.4.8.
РАБОТА 4.
ФОРМИРОВАНИЕ СЛОЖНЫХ ЗАПРОСОВ
КРАТКАЯ СПРАВКА
В перекрестном запросе отображаются результаты статистических расчетов (такие, как суммы, количество записей, средние значения), выполненных по данным из одного поля таблицы. Эти результаты группируются по двум наборам данных, один из которых расположен в левом столбце таблицы, а второй - в верхней строке. Например, нам надо узнать средний стаж работы ассистентов, доцентов и профессоров на разных кафедрах (на основе таблицы Преподаватели). Перекрестный запрос позволит легко решить эту задачу, создав таблицу, в которой заголовками строк будут служить должности, заголовками столбцов - названия кафедр, а в ячейках будут рассчитаны средние значения стажа преподавателей.
Запрос на изменение - это запрос, который за одну операцию вносит изменения в несколько записей. Существует четыре типа запросов на изменение; на удаление, обновление и добавление записей, а также на создание таблицы.
Запрос на удаление удаляет группу записей, удовлетворяющих заданным условиям, из одной или нескольких таблиц. С помощью запроса на удаление можно удалять только всю запись, а не отдельные поля внутри нее.
Запрос на обновление записей вносит общие изменения в группу записей одной или нескольких таблиц. Например, на 10 процентов увеличилась заработная плата ассистентов, Запрос на обновление позволит быстро внести эти изменения в таблицу Преподаватели.
Запрос на добавление добавляет группу записей из одной или нескольких таблиц в конец одной или нескольких таблиц. Например, появилось несколько новых преподавателей, а также база данных, содержащая сведения о них. Чтобы не вводить все данные вручную, их можно добавить в таблицу Преподаватели.
Запрос на создание таблицы создает новую таблицу на основе всех или части данных из одной или нескольких таблиц. Например, на основе таблицы Преподаватели можно создать новую таблицу, содержащую данные только о профессорах.
Запрос SQL - это запрос, создаваемый при помощи инструкций SQL. Этот тип запросов довольно сложен для начинающих пользователей и используется обычно опытными пользователями, имеющими навыки программирования и общения с серверами баз данных, Из-за сложности и специфики рассматривать запрос SQL в данной главе не будем.
ЗАДАНИЕ
1.Разработайте запрос с параметрами о студентах заданной группы, в котором при вводе в окно параметров номера группы (в примере это 151 или 152) на экран должен выводиться состав этой группы.
2. Создайте запрос, в котором выводятся оценки студентов заданной группы по заданной дисциплине.
3. Создайте перекрестный запрос, в результате которого создастся выборка, отражающая средний балл по дисциплинам в группах.
4. Разработайте запрос на увеличение на 10% заработной платы тех преподавателей, кто получает менее 500 руб.
5. Создайте запрос на удаление отчисленных студентов.
6. Разработайте запрос на создание базы данных отличников.
7. Для всех созданных вами запросов разработайте формы.
ТЕХНОЛОГИЯ РАБОТЫ
1. Для создания запроса с параметрами о студентах заданной группы:
откройте вкладку Запросы',
щелкните по кнопке <Создать>;
в появившемся окне выберите Простои запрос и щелкните по кнопке <ОК>;
в появившемся окне в строке Таблицы/запросы выберите из списка таблицу Студенты;
перенесите все поля из окна "Доступные поля" в окно "Выбранные поля";
щелкните по кнопке <Далее>. Выводить надо все поля, поэтому еще раз щелкните по кнопке <Далее>;
в появившемся окне введите имя запроса Группа;
щелкните по кнопке <Готово>. На экране появится таблица с данными запроса. Но вам надо, чтобы при выполнении запроса выяснялся номер группы. Для этого перейдите в режим конструктора;
в строке Условия отбора для поля "Номер группы" введите фразу (скобки то же вводить): [Введите номер группы];
выполните запрос, щелкнув по кнопке на панели инструментов, или выполните команду Запрос, Запуск;
в появившемся окне введите 151 и щелкните по кнопке <ОК>. На экране появится таблица с данными о студентах 151-й группы;
сохраните запрос и закройте таблицу запроса.
2. Для создания запроса, в котором выводятся оценки студентов заданной группы по заданной дисциплине:
на вкладке Запросы щелкните по кнопке <Создать>;
выберите Простой запрос и щелкните по кнопке <ОК>;
выберите таблицу Студенты и перенесите поля "Фамилия", "Имя", "Отчество", "Номер группы" в окно "Выделенные поля" (выделяя нужное поле и щелкая по кнопке).
Внимание! В дальнейшем под фразой В таблице ... выберите поле ... будем понимать выбор таблицы, выбор поля и перенос его в окно "Выделенные поля".
в таблице Дисциплины выберите поле "Название дисциплины";
в таблице Оценки выберите поле "Оценки". Вы сформировали шесть полей запроса - они связаны между собой посредством схемы данных;
щелкните по кнопке <Далее>, затем в появившемся окне снова щелкните по кнопке <Далее>;
в появившемся окне введите имя запроса Оценки группы, затем щелкните по ячейке Изменение структуры запроса (в ней должна появиться черная точка) - это позволит сразу перейти в режим конструктора;
щелкните по кнопке <Готово>;
в строке Условия отбора для поля "Номер группы" введите фразу: [Введите номер группы],
в строке Условия отбора для поля "Название дисциплины" введите фразу: [Введите название дисциплины]
выполните запрос;
в первом появившемся окне введите 152, затем щелкните по кнопке <ОК>, во втором - введите Информатика и щелкните по кнопке <ОК>. На экране появится таблица со списком 152-й группы и оценками по информатике;
сохраните запрос и закройте таблицу запроса.
3. Создайте перекрестный запрос о среднем балле в группах по дисциплинам. Но такой запрос строится на основе одной таблицы или одного запроса, в связи с чем надо сначала сформировать запрос, в котором были бы поля "Номер группы", "Название дисциплины" и "Оценки". Для этого:
на вкладке Запросы щелкните по кнопке <Создать>;
выберите Простой запрос и щелкните по кнопке <ОК>;
выберите из таблицы Студенты поле "Номер группы";
выберите из таблицы Дисциплины поле "Название дисциплины" ;
выберите из таблицы Оценки поле "Оценки";
щелкните по кнопке <Далее>, затем в появившемся окне снова щелкните по кнопке <Далее>;
в появившемся окне введите имя запроса Дисциплины оценки группы;
щелкните по кнопке <Готово>;
сохраните запрос и закройте таблицу запроса. Теперь можно создавать перекрестный запрос. Для этого:
на вкладке Запросы щелкните по кнопке <Создать>;
выберите Перекрестный запрос и щелкните по кнопке <ОК>;
щелкните по ячейке Запросы, выберите Дисциплины оценки группы и щелкните по кнопке <Далее>;
выберите поле "Название дисциплины" и щелкните по кнопке <Далее>;
выберите поле "Номер группы" и щелкните по кнопке <Далее>;
выберите функцию AVG, т.е. среднее (она по умолчанию уже выделена), и щелкните по кнопке <Далее>;
введите название запроса Средние оценки и щелкните по кнопке <Готово>. Откроется таблица перекрестного запроса. Обратите внимание на то, что Access создает еще итоговое значение средних оценок по дисциплинам;
закройте таблицу запроса.
4. Для создания запроса на изменение заработной платы преподавателей:
на вкладке Запросы щелкните по кнопке <Создать>;
выберите Простой запрос;
в таблице Преподаватели выберите поле <3арплата>;
щелкните по кнопке <Далее>, затем в появившемся окне снова щелкните по кнопке <Далее>;
в появившемся окне введите имя запроса Изменение зарплаты;
щелкните по ячейке Изменение структуры запроса;
щелкните по кнопке <Готово>;
в строке Условия отбора введите <1>500;
откройте пункт меню Запрос и выберите Обновление;
в строке конструктора запроса Обновление в поле "Зарплата" введите:[Зарплата]* 1,1;
выполните запрос, подтвердив готовность на обновление данных;
закройте запрос, подтвердив его сохранение;
откройте форму Преподаватели;
просмотрите изменение заработной платы у преподавателей, получающих меньше 500 р.;
закройте форму.
5. Для создания запроса на отчисление студента гр. 152 Перлова Кирилла Николаевича:
на вкладке Запросы щелкните по кнопке <Создать>;
выберите Простой запрос;,
в таблице Студенты выберите поля "Фамилия", "Имя", "Отчество", "Номер группы";
щелкните по кнопке <Далее>, затем в появившемся окне снова щелкните по кнопке <Далее>;
в появившемся окне введите имя запроса Отчисленные студенты;
щелкните по ячейке Изменение структуры запроса;
щелкните по кнопке <Готово>;
в строке Условия отбора введите; в поле "Фамилия" - Перлов, в поле "Имя" - Кирилл, в поле "Отчество" - Николаевич, в поле "Номер группы" - 152;
откройте пункт меню Запрос и выберите Удаление;
просмотрите удаляемую запись, щелкнув по кнопке или выполнив команду Вид, Режим таблицы; если отчисляемый студент выбран правильно, то перейдите в режим конструктора и выполните запрос. Если условия отбора сделаны неправильно, измените их;
закройте запрос;
откройте форму Студенты и удостоверьтесь в удалении записи о студенте Перлове;
закройте форму.
6. Для создания запроса на создание базы данных отличников:
на вкладке Запросы щелкните по кнопке <Создать>;
выберите Простой запрос;
в таблице Студенты выберите поля "Фамилия", "Имя", "Отчество" и "Номер группы", а в таблице Оценки - поле "Оценки";
щелкните по кнопке <Далее>, затем в появившемся окне вновь щелкните по кнопке <Далее>;
в появившемся окне введите имя запроса Отличники;
щелкните по ячейке Изменение структуры запроса;
щелкните по кнопке <Готово>;
Примечание.Для создания этого запроса надо воспользоваться операцией группировки. Будем считать отличниками тех студентов, которые набрали за четыре экзамена 20 баллов. Операция группировки позволит просуммировать оценки студентов по всем экзаменационным дисциплинам.
для выполнения групповых операции щелкните на панели инструментов по кнопке или выполните команду Вид, Групповые операции;
в строке Групповые операции поля "Оценки" щелкните по ячейке Групповые операции. Откройте раскрывающийся список и выберите функцию SUM;
в строке Условия отбора поля "Оценки" введите 20;
просмотрите создаваемую базу, щелкнув по кнопке или выполнив команду Вид, Режим таблицы;
перейдите в режим конструктора;
выполните команду Запрос, Создание таблицы;
введите имя таблицы Студенты-отличники и щелкните по кнопке <ОК>;
подтвердите создание таблицы;
закройте с сохранением запрос;
откройте вкладку Таблицы;
откройте таблицу Студенты-отличники. Удостоверьтесь в правильности создания таблицы. Закройте таблицу.
7. Для каждого из созданных запросов создайте форму (можно рекомендовать автоформу в столбец или ленточную автоформу) для удобного просмотра данных. При создании этих форм воспользуйтесь рекомендациями в работе 3.
РАБОТА 5.
СОЗДАНИЕ СЛОЖНЫХ ФОРМ И ОТЧЕТОВ
КРАТКАЯ СПРАВКА
Кнопочное меню представляет собой форму, на которой расположены элементы управления - кнопки с поясняющими надписями. Щелчок по кнопке открывает соответствующую таблицу, запрос, форму или отчет. Меню - это очень удобный инструмент работы с базами данных, и он практически всегда присутствует в базах, созданных для предприятий или фирм.
Кнопочное меню можно создать вручную (в режиме конструктора) или воспользовавшись диспетчером кнопочных форм. Меню, созданные вручную, могут обладать большими возможностями и выглядеть более привлекательно, чем меню, созданные диспетчером. Однако для создания красивого меню вручную требуется достаточно много времени даже для опытного разработчика, а создать простое меню с помощью диспетчера можно за несколько минут, тем более что впоследствии в режиме конструктора можно дополнить и изменить это меню. Остановимся на варианте создания меню с помощью диспетчеракнопочных форм.
ЗАДАНИЕ 1
Создание сложных форм.
1. Разработайте сложную форму, в которой с названиями дисциплин была бы связана подчиненная форма Студенты и подчиненная форма Оценки студентов.
2. Измените расположение элементов в форме в соответствии с рис. 4.12.
3. Вставьте в форму диаграмму, графически отражающую оценки студентов.
4. Отредактируйте вид осей диаграммы.
ТЕХНОЛОГИЯ РАБОТЫ
1. Для создания сложной формы;
на вкладке Формы щелкните по кнопке <Создать>;
выберите Мастер форм и, не выбирая таблицу или запрос, щелкните по кнопке <ОК>;
в таблице Дисциплины выберите поле "Название дисциплины";
в таблице Студенты выберите поля "Код студента", "Фамилия", "Имя", "Отчество", "Номер группы";
в таблице Оценки выберите поле "Оценки" и щелкните по кнопке <Далее>;
в появившемся окне вариант построения формы нас удовлетворяет, поэтому щелкните по кнопке <Далее>;
оставьте табличный вариант подчиненной формы и щелкните по кнопке <Далее>;
выберите нужный вам стиль оформления формы и щелкните по кнопке <Далее>;
введите название формы Дисциплины и оценки,
щелкните по кнопке <Готово> и просмотрите полученную форму.
2. Нас не удовлетворяет расположение полей на экране. Измените их в соответствии с рис. 4.13, оставив место для диаграммы.
Рис. 4.13. Форма Дисциплины и оценки
Для этого:
перейдите в режим конструктора;
стандартными средствами Windows (технология drag-and-drop) измените размеры подчиненной формы так, чтобы были видны все данные. Для этого надо (как правило, многократно) переключаться из режима конструктора в режим формы, смотреть на полученный результат и, если он не подходит, снова корректировать в режиме конструктора. Ширину столбцов в подчиненной форме можно изменить только в режиме формы.
3. Для того чтобы вставить в форму диаграмму оценок студентов по заданным дисциплинам, необходимо:
переключиться в режим конструктора;
выполнить команду Вид, Панель элементов;
на этой панели щелкнуть по кнопке <Аа>;
создать прямоугольник для надписи - заголовка диаграммы. Для этого переведите курсор в левый верхний угол будущего прямоугольника, нажмите левую кнопку мыши и, не отпуская ее, доведите до правого нижнего угла, затем отпустите кнопку;
ввести надпись Диаграмма оценок;
выполнить команду Вставка, Диаграмма;
на свободном месте формы растянуть прямоугольник для диаграммы (нажмите левую кнопку мыши в левом верхнем углу и, не отпуская ее, растяните прямоугольник до правого нижнего угла, затем отпустите кнопку);
выбрать таблицу Оценки и щелкнуть по кнопке <Далее>;
выбрать поля "Код студента" и "Оценки";
щелкнуть по кнопке <Далее>;
выбрать вид диаграммы Гистограмма (по умолчанию он и стоит) и щелкнуть по кнопке <Далее>;
дважды щелкнуть по надписи Сумма_оценки, выбрать Отсутствует и щелкнуть по кнопке <ОК>;
щелкнуть по кнопке <Далее>;
вновь щелкнуть по кнопке <Далее>, так как в строке Поля формы и в строке Поля диаграммы по умолчанию находится Код дисциплины (что нам и нужно);
стереть название диаграммы Оценки (так как мы уже задали надпись для диаграммы) и щелкнуть по кнопке <Далее>,
4. Отредактируйте вид осей диаграммы. Для этого:
дважды щелкните по диаграмме;
дважды щелкните по значениям вертикальной оси;
выберите вкладку Шкала;
уберите "галочку" у надписи Минимальное значение, а в ячейке справа от этого названия введите 1
уберите "галочку" у надписи Максимальное значение, а в ячейке справа от этого названия введите 5
уберите "галочку" у надписи Цена основных делении, а в ячейке справа от этого названия введите 1 и щелкните по кнопке <ОК>;
расширьте область диаграммы, перетащив правую границу окна диаграммы несколько правее (подведя курсор к правой границе до появления двойной стрелки и нажав левую кнопку мыши);
закройте окно "Microsoft Graph", выбрав в меню Файл пункт Выход и возврат в дисциплины и оценки: форма.
перейдите в режим формы (она представлена на рис. 4.14) и просмотрите форму для разных дисциплин (щелкая по кнопке перехода к следующей записи в нижней части формы). Вы увидите изменение названий дисциплин, а также оценок студентов по этим дисциплинам и изменение диаграмм, отображающих эти оценки;
закройте форму.
Рис. 4.14. Форма Дисциплины и оценки с включенной в нее диаграммой
ЗАДАНИЕ 2
Создание сложных отчетов.
1. Создайте запрос, на основе которого будет формироваться отчет. В запросе должны присутствовать: из таблицы Студенты - поля "Фамилия", "Имя", "Отчество" и "Номер группы", из таблицы Дисциплины - поле "Название дисциплины", из таблицы Оценки - поле "Оценки".
2. Создайте отчет по итогам сессии. В отчете оценки студентов должны быть сгруппированы по номерам групп и дисциплинам. Для каждого студента должна вычисляться средняя оценка в сессию, а для каждой группы - среднее значение оценок по всем предметам.
ТЕХНОЛОГИЯ РАБОТЫ
1. Для создания запроса:
на вкладке Запросы щелкните по кнопке <Создать>;
выберите Простой запрос и щелкните по кнопке <ОК>;
из таблицы Студенты выберите поля "Фамилия", "Имя", "Отчество" и "Номер группы", из таблицы Дисциплины - поле "Название дисциплины", из таблицы Оценки - поле "Оценки" и щелкните по кнопке <Далее>;
щелкните еще раз по кнопке <Далее>;
введите название запроса Сессия и щелкните по кнопке <Готово>;
закройте запрос.
2. Для создания итогового отчета выполните следующее:
на вкладке Отчеты щелкните по кнопке <Создать>;
выберите Мастер отчетов, из раскрывающегося списка - запрос Сессия и щелкните по кнопке <ОК>;
выберите все поля запроса и щелкните по кнопке <Далее>;
тип представления данных нас удовлетворяет, поэтому щелкните по кнопке <Далее>;
добавьте уровень группировки по номеру группы, выбрав в левом окне Номер группы и перенеся его в правое окно, щелкнув по кнопке ;
щелкните по кнопке <Далее>;
щелкните по кнопке <Итоги>, так как надо вычислять средний балл;
поставьте "галочку" в ячейке поля "AVG" (эта функция вычисляет среднее) и щелкните по кнопке <ОК>;
щелкните по кнопке <ОК>, так как сортировка не требуется, потому что данными являются название дисциплины и оценки, порядок которых не столь важен;
выберите макет отчета. Рекомендуем ступенчатый, так как он занимает меньше места и в нем наглядно представлены данные (хотя это дело вкуса). Щелкните по кнопке <Далее>; выберите стиль отчета и щелкните по кнопке <Далее>;
введите название отчета Итоги сессии и щелкните по кнопке <Готово>. На экране появится отчет. Его можно просмотреть, изменяя масштаб (щелкнув по листу) и перелистывая страницы (в нижней части экрана). Его можно также распечатать, выполнив команду Файл, Печать. После завершения необходимых вам операций закройте окно просмотра отчета.
ЗАДАНИЕ 3
Разработайте кнопочную форму-меню для работы с базами данных, в которой должны быть созданные вами формы и отчет.
ТЕХНОЛОГИЯ РАБОТЫ
Для создания кнопочного меню выполните следующие действия:
выполните команду Сервис, Надстройки, Диспетчер кнопочных форм;
подтвердите создание кнопочной формы, щелкнув по кнопке <Да>;
Access предложит вам работать с главной кнопочной формой или создать дополнительно новую. Создайте свою форму, щелкнув по кнопке <Создать>;
введите имя Меню и щелкните по кнопке <ОК>;
в окне выберите Меню и щелкните по кнопке <Изменить>;
создайте элементы данной кнопочной формы, щелкнув по кнопке <Создать>;
в строке Текст введите поясняющую надпись к первой создаваемой кнопке Преподаватели,
в строке Команда выберите из списка Открытие формы в режиме редактирования;
Примечание.Диспетчер напрямую может связать кнопку с открытием формы или отчета. Чтобы открыть таблицу или запрос, надо создать соответствующий макрос и указать это в диспетчере.
в строке Форма выберите из списка форму Преподаватели и щелкните по кнопке <ОК>; введите в меню все созданные формы и отчет, повторяя п. 6 - 9;
закройте окно кнопочной формы, щелкнув по кнопке <3акрыть>;
щелкните по кнопке <По умолчанию>;
закройте диспетчер кнопочных форм, щелкнув по кнопке <3акрыть>;
на вкладке Формы подведите курсор мыши к надписи Кнопочная форма, щелкните правой кнопкой мыши, выберите пункт Переименовать и введите новое имя Форма меню, затем нажмите клавишу <Enter>;
откройте эту форму и просмотрите возможности открытия форм и отчета из меню.
Примечание. Для возврата из любой открытой формы или отчета в меню достаточно закрыть их.
РАБОТА С МАКРОСАМИ.
1.Сущность макросов.
В Access макрос - определенная последовательность операций. Они хранятся в окне, напоминающем таблицу, в таком порядке, в котором их необходимо выполнять. При запуске макроса Access выполняет эти действия. Макрос может существенно облегчить использование Access. Одной из полезных особенностей макросов является возможность их привязки к кнопкам, которые помещаются в формы. Эти кнопки могут выполнять часто повторяющиеся операции (например, открывать диалоговые окна для поиска, изменять порядок сортировки данных или печатать отчет). Пользователи Access могут использовать определенные кнопки для выполнения этих действий, даже не зная всех подробностей операций, выполняемых макросом. Используя макросы, можно создавать завершенные приложения с пользовательским меню и диалоговыми окнами.
2. Создание и выполнение макросов.
2.1. Создание макросов.
Для создания макроса необходимо открыть вкладку Макросы в окне БД и выполнить щелчок по кнопке Создать. Это же действие можно выполнить с использованием пунктов меню Вставка -> Макрос. В открывшемся диалоговом окне отображена информация следующего вида:
Окно макросов делится на две части: верхнюю и нижнюю. В верхней части находится список макрокоманд, которые необходимо выполнить, и необязательные примечания к этим командам. В нижней части окна находятся аргументы макрокоманды.
При разработке макроса необходимо задать действия (ввести макрокоманды), которые он должен выполнить (например, открыть форму, распечатать отчет, выполнить запрос или экспортировать содержимое таблицы в файл электронной таблицы). В Access такие действия можно определить двумя способами:
Выбрать из списка в столбце Макрокоманда (или ввести их вручную),
Переместить объекты из окна БД в столбец Макрокоманда окна макросов.
1-й способ:
В окне макросов выполнить щелчок мышью на первой пустой ячейке в столбце Макрокоманда. Затем выполнить щелчок по кнопке раскрытия списка, при этом раскрывается список допустимых макрокоманд.
Выбрать из списка команду, которую должен выполнить макрос или набрать эту команду вручную.
Выполнить щелчок в нижней части окна или нажать клавишу F6 и указать аргументы действия.
При необходимости добавить комментарий в столбце Примечание.
В таблице 1 представлен список макрокоманд их назначение и аргументы
2-й способ:
Для создания такого макроса необходимо выполнить следующие действия:
Переместить окно макросов и изменить его размеры таким образом, чтобы одновременно были видны окна макросов и базы данных.
Выбрать вкладку объекта, который будет открываться макросом
Выполнить щелчок на нужном объекте и переместить его в пустую строку столбца Макрокоманда окна макросов После этого в столбце Макрокоманда появится соответствующая команда.
В разделе Аргументы макрокоманды появятся аргументы. При необходимости их можно изменить.
Таблица 1. Макрокоманды, их назначение и аргументы
Команда |
Назначение |
Аргументы |
Восстановить |
Восстанавливает размер максимизированного или минимизированного окна |
Нет |
ВывестиВФормате |
Выводит данные в файл другого формата |
Тип объекта, Имя объекта, Формат вывода, Имя файла, Автозагрузка, Файл шаблона |
ВыводНаЭкран |
Определяет, должна ли Access обновлять экран во время выполнения макроса |
Включить вывод, Текст строки состояния |
ВыделитьОбъект |
Выбирает указанный объект |
Тип объекта, Имя объекта, В окне базы данных |
ВыполнитьКоманду |
Выполняет команду меню |
Команда |
Выход |
Инициирует выход из Access |
Параметры |
ДобавитьМеню |
Добавляет меню в строку пользовательского меню |
Название меню, Имя макроса, Текст строки состояния |
ЗадатьЗначение |
Устанавливает значение поля, элемента управления или свойства |
Элемент, Выражение |
ЗадатьКомандуМеню |
Устанавливает состояние пункта меню |
Индекс меню, Индекс команды, Индекс подкоманды, состояние элемента |
Закрыть |
Закрывает указанный объект или активное окно (при отсутствии аргумента) |
Тип объекта, Имя объекта, Сохранение |
ЗапускЗапросаSQL |
Выполняет запрос, используя оператор SQL |
Инструкция SQL, Использовать транзакцию |
ЗапускМакроса |
Выполняет другой макрос |
Имя макроса, Число повторов, Условие повтора |
ЗапускПриложения |
Запускает приложение Windows или DOS |
Командная строка |
ЗапускПрограммы |
Выполняет процедуру Visual Basic |
Имя функции |
КомандыКлавиатуры |
Отсылает события нажатия клавиш в Access или в активное приложение Windows |
Команды клавиатуры, Пауза |
КопироватьОбъект |
Копирует выбранный объект базы данных в другую базу данных или в ту же базу, но под другим именем |
База данных, новое имя, Тип объекта, Имя объекта |
КЭлементуУправления |
Перемещает курсор в поле или в элемент управления активной формы, таблицы данных или динамического набора запроса |
Элемент управления |
НаЗапись |
Перемещает курсор на указанную запись |
Тип объекта, Имя объекта, Запись, Смещение |
НайтиЗапись |
Находит первую запись, которая удовлетворяет условиям, определенным действием НайтиЗапись или значениями в диалоговом окне Найти |
Образец поиска, Совпадение, С учетом регистра, область поиска, С учетом формата поля, Только в текущем поле, Первое вхождение |
НаСтраницу |
Перемещает курсор на указанную вкладку активной формы |
Номер страницы, От левого края, От верхнего края |
ОбновитьОбъект |
Выполняет обновление экрана для указанного объекта или, если объект не указан, для активного объекта |
Тип объекта, имя объекта |
Обновление |
Обновляет данные в указанном элементе управления из источника данных |
Имя элемента |
ОстановитьВсеМакросы |
Останавливает все выполняемые макросы |
Нет |
ОстановитьМакрос |
Останавливает выполнение текущего макроса |
Нет |
ОткрытьЗапрос |
Открывает выбранный запрос в указанном режиме |
Имя запроса, Режим, Режим данных |
ОткрытьМодуль |
Открывает указанный модуль Visual Basic for Application |
Имя модуля, Имя процедуры |
ОткрытьОтчет |
Открывает отчет в указанном режиме или печатает его |
Имя отчета, Режим, Имя фильтра, Условие отбора |
ОткрытьТаблицу |
Открывает таблицу в указанном режиме |
Имя таблицы, Режим, Режим данных |
ОткрытьФорму |
Открывает форму в указанном режиме (формы, конструктора, просмотра или таблицы) |
Имя формы, Режим, Имя фильтра, Условие отбора, Режим данных Режим окна |
ОтменитьСобытие |
Отменяет событие, которое привело к выполнению макроса |
Нет |
ОтправитьОбъект |
Включает указанный объект в сообщение для отправки по электронной почте |
Тип объекта, Имя объекта, Формат вывода, Куда, Копии, Скрытые копии, Тема, Сообщение, Изменение сообщения, Файл шаблона |
ПанельИнструментов |
Отображает или скрывает панель инструментов |
Панель инструментов, Показать |
Переименовать |
Переименовывает выбранный объект |
Новое имя, Тип объекта, Старое имя |
ПесочныеЧасы |
Во время выполнения макроса изменяет форму указателя мыши на форму песочных часов |
Включить |
Печатать |
Печатает активный объект |
Распечатать, Со страницы, По страницу, Разрешение, Число копий, Разобрать копии |
ПоказатьВсеЗаписи |
Удаляет использованные фильтры из активной формы |
Нет |
ПреобразоватьБазуДанных |
Импортирует или экспортирует данные между текущей базой данных и другой базой данных Access |
Тип преобразования, Тип базы данных, Имя базы данных, Тип объекта, Источник, Адресат, Только структура |
ПреобразоватьТекст |
Импортирует или экспортирует данные между текущей базой данных и текстовым файлом |
Тип преобразования, Название спецификации, Имя таблицы, Имя файла, С именами полей |
ПреобразоватьЭлектроннуюТаблицу |
Импортирует или экспортирует данные между текущей базой данных и файлом электронной таблицы |
Тип преобразования, Тип электронной таблицы, Имя таблицы, Имя файла, С именами полей, Диапазон |
ПрименитьФильтр |
Применяет фильтр, запрос или оператор SQL WHERE к форме или отчету для фильтрования или сортировки записей |
Имя фильтра, Условие отбора |
Развернуть |
Максимизирует активное окно |
Нет |
Свернуть |
Минимизирует активное окно |
Нет |
СдвигРазмер |
Передвигает активное окно или изменяет его размеры |
По правому краю, От верхнего края, Ширина, Высота |
Сигнал |
Выдает звуковой сигнал |
Нет |
СледующаяЗапись |
Находит следующую запись, которая удовлетворяет условиям, определенным действием НайтиЗапись или значениями в диалоговом окне Найти |
Нет |
Сообщение |
Отображает окно с сообщением или предупреждением |
Сообщение, Сигнал, Тип, Заголовок |
Сохранить |
Сохраняет указанный объект |
Тип объекта, Имя объекта |
УдалитьОбъект |
Удаляет указанный объект |
Тип объекта, Имя объекта |
УстановитьСообщение |
Включает/Выключает системные сообщения |
Включить сообщения |
В столбце Примечание можно ввести любые комментарии, которые помогут проследить какое действие выполняет макрос.
2.2. Сохранение макросов.
Для сохранения макроса необходимо
выполнить следующие действия:
Выбрать
команду Файл ->
Сохранить. Или выполнить щелчок по
пиктограмме Сохранить
на панели инструментов. Если макрос
сохраняется впервые, Access запросит для
него имя. Ввести имя созданного макроса,
выполнить щелчок по кнопке ОК
и закрыть окно макросов, нажав комбинацию
клавиш Ctrl+F4.
2.3. Выполнение макроса.
После завершения разработки макроса можно проверить его работу, запустив макрос на выполнение. Самым простым способом является следующий: открыть вкладку Макросы в окне БД, выделить макрос и щелкнуть по кнопке Запуск или выполнить двойной щелчок на макросе в окне БД.
Другой способ запуска следующий:
Выбрать
команду Сервис->
Макрос ->Запуск макроса. В появившемся
диалоговом окне Запуск
макроса выбрать или ввести имя
макроса.
Если макрос открыт в режиме конструктора, его можно выполнить, щелкнув по кнопке Запуск на панели инструментов.
Кроме того, макросы можно выполнять при помощи кнопок, которые добавляются в формы. Кнопки макросов можно создать методом перетаскивания.
Открыть нужную форму в режиме конструктора, переместить форму и установить ее размеры таким образом, чтобы можно было видеть и окно БД.
Открыть вкладку Макросы в окне БД для отображения макросов.
Перетащить нужный макрос в то место формы, где необходимо разместить кнопку. Созданная кнопка появится в окне формы.
Макрос можно настроить таким образом, чтобы он выполнялся автоматически при запуске БД.
Для этого достаточно при сохранении созданного макроса присвоить ему имя Autoexec. Макросы Autoexec обычно используются для открытия форм, с которыми чаще всего работают пользователи, или для размещения на экране нескольких часто используемых форм и/или отчетов.
Удерживая клавишу Shift во время открытия БД, можно отменить запуск макроса Autoexec.
3. Редактирование макросов
Структура таблицы в окне макросов напоминает структуру обычной таблицы БД. Команды редактирования текста, используемые для удаления, переноса и копирования содержимого ячеек, могут применяться и в рамках таблицы макроса.
Редактирование макроса осуществляется в режиме конструктора. Аргументы и краткое описание макрокоманды отображаются в окне макросов только при ее маркировке.
Например, для вставки дополнительной макрокоманды в существующий макрос необходимо выполнить следующие действия:
Выбрать вкладку Макросы в окне БД;
Выбрать макрос для редактирования, выполнив на нем щелчок мышью;
Открыть макрос в режиме конструктора, выбрав кнопку Конструктор;
Выбрать макрокоманду перед которой необходимо произвести вставку новой, выполнив щелчок мышью в одном из полей этой макрокоманды или маркировав всю строку целиком;
Выбрать пункт меню Вставка, подпункт Строки. Перед маркированной строкой будет вставлена пустая;
Поместить в эту строку новую макрокоманду;
Сохранить макрос (Файл -> Сохранить).
4. Копирование макросов.
Макросы можно копировать из одной БД в другую или в одну и туже БД под разными именами. Это экономит время при создании макросов, выполняющих похожие задачи.
Существующий макрос можно скопировать, выполнив следующие действия:
В окне БД выбрать нужный макрос.
Выбрать команду Правка -> Копировать.
Для копирования макроса в другую БД закрыть текущую и открыть ту, в которую будет копироваться макрос. Выбрать в окне БД вкладку Макросы.
Выбрать команду Правка -> Вставить.
В появившемся диалоговом окне ввести имя макроса. Если макрос копируется в ту же БД, в которой находится существующий макрос, то копируемому макросу необходимо присвоить другое имя.
СРЕДСТВА ЗАЩИТЫ ДАННЫХ.
1. Общие свойства
Средства защиты БД, реализованные в ACCESS , позволяют предотвратить умышленные или случайные просмотр, изменение и удаление информации лицами, которые не имеют соответствующих прав доступа. Эти средства особенно важны при функционировании БД в сети.
В ACCESS предусмотрены различные уровни защиты данных и администрирования доступа к ним. Возможности ACCESS позволяют обеспечить безопасность как самого приложения, так и файла БД. Простейшим средством защиты БД от несанкционированного доступа является пароль.
После того как пароль установлен, при каждом открытии БД будет появляться диалоговое окно, в которое требуется ввести пароль. Пользователи смогут открыть БД, только после ввода правильного пароля. Этот способ достаточно надежен, поскольку ACCESS шифрует пароль, так что к нему нет прямого доступа при чтении файла БД. Недостаток такого способа защиты в том, что он применяется только при открытии БД. После открытия БД все объекты становятся доступными для пользователя (если не определена защита на уровне пользователей). Для БД, которая совместно используется небольшой группой пользователей или на автономном компьютере, установка пароля обычно оказывается достаточной.
Усовершенствовать защиту позволяют средства поддержки рабочих групп, ведения учетных (регистрационных) записей, задания прав владения и прав доступа. С помощью средств защиты можно указать, какие операции по обработке объектов БД разрешается выполнять пользователю или группе пользователей. О каждом пользователе или группе ведутся учетные записи с указанием прав доступа
2. Рабочие группы.
Рабочей называется группа пользователей, работающих с одной БД и имеющих общий файл рабочей группы. (Файл рабочей группы - это системный файл с информацией о группе пользователей, работающих в многопользовательской среде с БД. В файлах рабочих групп хранятся учетные записи, пароли, а также данные о правах доступа к объектам БД.)
При инсталляции ACCESS по умолчанию создается стандартный файл рабочей группы SYSTEM.MDW, сохраняемый в папке, в которой установлен ACCESS . Он используется программой до появления нового файла рабочей группы. Изменение стандартного или создание нового файла рабочей группы выполняет программа Администратор рабочих групп (Wrkgadm), находящаяся в подпапке System папки Windows. По умолчанию все файлы рабочей группы ACCESS имеют расширение .MDW.
2.1. Изменение файла рабочей группы.
Текущая рабочая группа указывается в файле рабочей группы, имя которого отображается в диалоговом окне программы Администратор рабочих групп. Для вызова этой программы необходимо дважды щелкнуть на элементе Wrkgadm в окне Проводник (Рисунок.1.).
|
Рисунок 1. |
Для изменения файла рабочей группы нажать кнопку Связать, вследствие чего на экране появится диалоговое окно Файл рабочей группы (Рисунок 2.).
|
Рисунок 2. |
В поле База данных ввести полное имя нового файла рабочей группы. Этот файл можно найти, используя кнопку Обзор... После нажатия кнопки ОК программа сообщит об установлении связи с новой рабочей группой.
Для создания нового файла рабочей группы необходимо нажать кнопку Создать в окне Администратор рабочих групп, при этом откроется диалоговое окно Сведения о владельце рабочей группы (Рисунок 3.), ввести соответствующие данные.
|
Рисунок 3. |
По умолчанию отображается информация о пользователе, указанном при установке Microsoft Office .
В поле Имя ввести имя владельца, в поле Организация - название организации, а в поле Код группы - код рабочей группы, которым может быть любая комбинация из букв и цифр, не превышающая 20 символов. При вводе кода группы следует учитывать и регистр клавиатуры. После ввода перечисленных данных нажать кнопку ОК. Код рабочей группы можно не вводить.
На экране отобразится диалоговое окно Файл рабочей группы, поле База данных которого содержит полное имя существующего файла рабочей группы. При необходимости ввести новое имя и нажать кнопку ОК. Новый системный файл рабочей группы используется только после следующего запуска ACCESS .
Аналогичным образом для каждой группы пользователей можно создать файлы рабочих групп, которые рекомендуется поместить в одну папку. Файл рабочей группы не обязательно помещать в папку с файлом БД.
Сведения об имени, организации и коде рабочей группы необходимо записать и сохранить, т.к. эти данные могут понадобиться при восстановлении системного файла рабочей группы. Если по каким-либо причинам эти данные будут утеряны, восстановить БД не удастся.
3. Ограничение доступа в Microsoft Access .
После установки ACCESS пользователь получает право доступа ко всем объектам БД (становится членом группы Admins с именем Admin). Поскольку по умолчанию пароль в этой учетной записи не указывается, его не нужно вводить для входа в систему.
Члены группы Admins (администраторы) имеют право на модификацию БД. Пока не будет задана регистрация входа в систему всех членов рабочей группы, ACCESS будет разрешать вход в систему используя предопределенную регистрационную запись Admin. Чтобы задать регистрацию входа в систему и тем самым устранить произвольный доступ к ней, следует установить пароль для администратора в регистрационной записи Admin. В противном случае при каждом запуске ACCESS администратор будет регистрироваться как пользователь Admin без указания пароля.
Чтобы регистрировался вход в систему необходимо выполнить последовательность действий:
Запустить ACCESS , указав рабочую группу, и открыть БД.
В подменю Защита меню Сервис активизировать команду Пользователи и группы (Рисунок 4).
|
Рисунок 4. |
В открывшемся диалоговом окне перейти на вкладку Изменение пароля, ввести в поле Новый пароль задуманный пароль и подтвердить его в поле Подтверждение. Поле Текущий должно остаться пустым. Затем - кнопка ОК.
При вводе пароля вместо введенных символов отображаются звездочки (*). Пароль может иметь длину от 1 до 14 знаков и включать любые символы, кроме 0 кода ASCII. Следует помнить, что при вводе пароля различаются строчные и прописные символы.
При следующем запуске ACCESS на экране появится диалоговое окно Вход для ввода пароля (Рисунок 5).
|
Рисунок 5. |
В поле Имя следует ввести имя пользователя, а в поле Пароль - пароль. После нажатия кнопки ОК программа продолжит процесс запуска, если пароль введен правильно.
Удалить пароль можно, выполнив последовательность действий:
В подменю Защита меню Сервис активизировать команду Пользователи и группы.
В открывшемся диалоговом окне перейти на вкладку Пользователи и, удостоверившись, что в поле Имя указано правильное имя пользователя, нажать кнопку Снять пароль.
Таким же образом устанавливается и изменяется пароль для остальных пользователей системы. Сначала они входят в систему под своим именем, не вводя пароль, затем указывают его.
4. Учетные записи.
После создания рабочей группы можно приступить к внесению учетных (регистрационных) записей.
По умолчанию создается учетная запись Admin, а также учетные записи групп Admins (Администраторы), Users (Пользователи) и предоставляются права доступа ко всем объектам.
Учетная запись администратора включена в рабочую группу Admins. Администратор имеет право доступа ко всем объектам, созданным в этой группе. Кроме администратора может быть указан владелец БД. В системе обеспечения безопасности ACCESS владельцы объектов имеют особый статус. По умолчанию пользователь, создавший объект, становится владельцем объекта и прав на работу с ним.
Администраторы и владельцы наделены особыми правами:
Администратор БД всегда может получить права доступа ко всем объектам, созданным членами данной рабочей группы;
Владелец БД всегда может открыть БД;
Владелец объекта наделен полными правами доступа к этому объекту.
Так как регистрационная запись Admin одинакова для всех копий ACCESS , для защиты БД необходимо включить нового пользователя в группу Admins или заменить администратора Admin.
Чтобы включить нового пользователя в группу Admins, необходимо выполнить действия:
Запустить ACCESS , выбрав рабочую группу и открыть любую БД
В подменю Защита меню Сервис активизировать команду Пользователи и группы.
В открывшемся диалоговом окне перейти на вкладку Пользователи и нажать кнопку Создать.
В появившемся диалоговом окне в поле Имя ввести имя учетной записи (пользователя), а в поле Код - уникальный код записи. Затем - кнопка ОК.
Имя пользователя может иметь длину от 1 до 20 символов и включать буквы, цифры, пробелы и другие символы за исключением символов: " \ [] ^| <> + = ; , ? * и управляющих символов (с кодами ASCII от 00 до 31). Кроме того, имя записи не может начинаться с пробела.
После возвращения в окно Пользователи и группы выбрать в списке Имеющиеся группы группу Admins и нажать кнопку Добавить. Группа Admins будет помещена в список Участие в группе, что обеспечит ввод учетной записи в группу Admins. В завершение нажать ОК.
Такая же последовательность операций выполняется при создании учетной записи владельца, которая, в зависимости от требования защиты, может быть внесена в группу Admins или в другую группу.
Кроме учетных записей администратора и владельца в ACCESS создаются записи для пользователей и групп пользователей, которые могут иметь одинаковые права.
Примечание:
Учетные записи пользователей должны создаваться в рабочей группе, которая будет применяться при запуске приложения.
Для создания новой группы пользователей и соответствующей учетной записи надлежит активизировать команду Пользователи и группы подменю Защита меню Сервис, в открывшемся диалоговом окне выбрать вкладку Группы и нажать кнопку Создать.
В открывшемся диалоговом окне (Рисунок 6) в поле Имя указывается имя группы, а в поле Код - уникальный код (любая комбинация символов длиной от 4 до 20 знаков).
|
Рисунок 6. |
На имя группы накладываются те же ограничения, что и на имя пользователя.
Удаление учетной записи или группы из рабочей группы осуществляется следующим образом:
Запустить ACCESS с выбранной рабочей группой и открыть БД.
В подменю Защита меню Сервис активизировать команду Пользователи и группы.
В открывшемся диаловом окне перейти на вкладку Пользователи (при удалении учетной записи пользователя) или Группы (при удалении учетной записи группы).
В списке Имя выбрать выбрать имя пользователя или группы для удаления, нажать кнопку Удалить, затем подтвердить удаление, нажав кнопку Да.
Закрыть окно Пользователи и группы.
После создания учетных записей пользователей и групп взаимосвязь между ними можно проследить, нажав кнопку Отчет о защите. При этом появляется диалоговое окно, в котором можно выбрать необходимые сведения (Рисунок 6.7.) и вывести их на печать.
|
Рисунок 7. |
5. Изменение прав владения.
После инсталляции ACCESS пользователь Admin является владельцем любой БД и всех объектов. Поскольку для него не устанавливается пароль, для защиты БД от несанкционированного доступа необходимо изменить права владения базой и всеми объектами.
Существует несколько способов смены владельца объектов БД:
импортирование всех объектов БД в новый файл;
использование вкладки Смена владельца диалогового окна Разрешения.
Для первого способа последовательность действий такая:
Запустить ACCESS с выбранной рабочей группой.
Войти в систему под именем нового владельца БД
Создать новую (пустую) БД.
В подменю Внешние данные меню Файл активизировать команду Импорт.
В окне Импорт указать БД, владельца которой необходимо сменить, и скопировать все ее объекты в новую БД.
Более простой способ смены владельца БД состоит в следующем:
Открыть БД и выбрать в меню Сервис команду Защита.
В открывшемся подменю активизировать команду Разрешения.
В появившемся диалоговом окне (Рисунок 8.) открыть вкладку Смена владельца.
|
Рисунок 8. |
Выбрать тип объекта в списке Тип объекта. В области Объект отобразится список всех объектов выбранного типа, а в области Текущий владелец - имена владельцев.
Выделить в списке Объекты те объекты, владельца которых необходимо сменить.
В поле Новый владелец указать учетную запись пользователя, которому предоставляются права владельца этих объектов. Если в качестве владельца будет выступать группа, следует предварительно активизировать переключатель Группы.
Нажать кнопку Сменить владельца.
6. Присвоение и удаление прав доступа.
Администратор БД предоставляет всем или некоторым членам рабочей группы права доступа к различным объектам базы. Права доступа хранятся в файле БД и характеризуют ее объекты.
К разграничению прав доступа пользователей и групп можно приступить после создания рабочей группы, определения администратора и владельца БД, а также создания учетных записей пользователей и групп. Пользователь наследует права той группы, к которой принадлежит.
Перечень прав доступа, определенных в ACCESS приведен в следующей таблице:
Право доступа |
Действие |
Объекты доступа |
Открытие/Запуск |
Открытие БД, формы, отчета или запуск макроса |
БД, формы, отчеты и макросы |
Чтение макета |
Просмотр объектов в режиме конструктора |
Таблицы, запросы, формы, отчеты, макросы, модули |
Изменение макета |
Просмотр, изменение и удаление объектов в режиме конструктора |
Таблицы, запросы, формы, отчеты, макросы и модули |
Администратора |
Полный доступ к объектам и данным, включая возможность присвоения прав доступа |
БД, таблицы, запросы, формы, отчеты, макросы и модули |
Чтение данных |
Просмотр данных |
Таблицы и запросы |
Обновление данных |
Просмотр и изменение данных без вставки и удаления |
Таблицы и запросы |
Вставка данных |
Просмотр и вставка данных без изменения и удаления |
Таблицы и запросы |
Удаление данных |
Просмотр и удаление данных |
Таблицы и запросы |
Монопольный доступ |
Открытие БД в монопольном режиме |
БД |
Наряду с правами доступа к существующим объектам предоставляются и права доступа к новым объектам. Из таблицы видно, что некоторые права доступа обуславливают наличие других прав. Так таблица, в которой разрешено обновление данных, доступна для чтения данных и макета. При наличии прав администратора пользователю доступны все перечисленные выше права.
Определить права доступа к некоторому объекту может владелец этого объекта, администратор в рабочей группе Admins или пользователь, с правами администратора для данного объекта.
Все права доступа к объекту сохраняются при его изменении только в том случае, если не применялся буфер обмена или не выполнялся импорт/экспорт объекта. Кроме того, все связанные с объектом права доступа могут быть утеряны при сохранении объекта под новым именем посредством команды Сохранить как/экспорт.
Чтобы предоставить права доступа к объектам БД, необходимо выполнить действия:
Открыть БД. При этом пользователь, вошедший в систему, должен иметь право доступа к объектам.
Выбрать в меню Сервис команду Защита. В открывшемся подменю активизировать команду Разрешения.
В появившемся диалоговом окне перейти на вкладку Разрешения.
В поле Тип объекта выбрать тип объекта, на который распространяются новые права.
В списке Имя объекта отметить объекты, доступ к которым будет разрешен пользователю или группе, указанным в списке Пользователи и группы.
Выбрать право доступа к отмеченным объектам.
Нажать ОК.
7. Шифрование БД.
Шифрование - это защита БД от несанкционированного доступа с помощью текстового редактора или средств работы с файлами, например, входящих в состав Windows или Norton Utilites. Информация в зашифрованной БД недоступна для чтения. Шифрование несколько замедляет работу ACCESS, т.к. расходуется время на шифрование и дешифрование файлов.
Шифрование и дешифрование БД могут производить только члены группы Admins. Эти операции выполняются следующим образом:
Запустить ACCESS с выбранной рабочей группой.
В подменю Защита меню Сервис активизировать команду Шифровать/дешифровать, вследствие чего на экране появится окно выбора БД для шифрования.
Выбрать БД, которую необходимо зашифровать или дешифровать, и нажать ОК.
Если выбранная БД не зашифрована, откроется диалоговое окно Шифрование базы данных под именем, в котором программа предложит новое имя для зашифрованной БД. Если же выбранная БД зашифрована, появится окно Дешифрование базы данных под именем.
Выбрать имя файла, и нажать кнопку Сохранить.
Базы данных. Урок 1.
Тема: Основные понятия БД.
Цель урока:
Образовательная: Сообщение новых понятий: БД, фактографическая и документальная БД, Информационная система, распределённая БД, реляционная БД. Ознакомление со структурой БД: поле, запись, главный ключ, основные типы полей.
Развивающая: формирование умений структурирования данных в виде таблицы, определения типов полей.
Воспитательная: воспитание положительного интереса к программированию.
Тип урока: усвоение новых знаний.
Организационный момент.
Изучение нового материала.
БД – организованная совокупность данных, предназначенная для длительного хранения во внешней памяти ЭВМ и постоянного применения.
БД бывают фактографическими и документальными.
Фактографическая БД – содержит краткие сведения об описываемых объектах, представленных в строго определённом формате.
БД книжного фонда библиотеки; (год издания, автор…)
БД кадрового состава учреждения (ФИО, год и место рождения…).
Документальная БД – содержит обширную информацию самого разного типа: текстовую, графическую, звуковую, мультимедийную.
БД законодательных актов в области уголовного права (тексты законов);
БД современной эстрадной песни (тексты песен, ноты, звуковые записи, видеоклипы..).
*Сама по себе БД не может обслуживать запросы пользователя на поиск и обработку информации, БД – это только «информационный склад». Обслуживание осуществляет информационная система.
Информационная система – это совокупность БД и всего комплекса аппаратно-программных средств для её хранения, изменения и поиска информации, для взаимодействия с пользователем.
Система продажи билетов на пассажирские поезда и самолеты;
Всемирная глобальная сеть Интернет.
*Для хранения БД может использоваться как один, так и несколько взаимосвязанных компьютеров.
Распределенная БД – БД, разные части которой хранятся на различных ЭВМ компьютерной сети.
*Чаще всего для организации БД используется табличный способ. Такие БД называются реляционными. Главное достоинство реляционных БД – их понятность. В повседневной жизни мы постоянно сталкиваемся с табличной формой организации данных: школьное расписание, табель, расписание поездов… Мы настолько привыкли к таблицам, что никому не требуется объяснять, как ими пользоваться.
Реляционные БД – БД с табличной формой организации. Строка таблицы называется записью, а столбец – полем.
Каждое поле таблицы имеет своё имя (Дата, Осадки, Температура…) и тип.
Тип поля определяет, какого рода информация хранится в поле и какие действия над ней можно производить.
Основные типы полей:
Числовой – числа;
Символьный – слова, тексты …
Дата/время – календарные даты в форме день/месяц/год, время – час/мин/сек
Логический – может принимать два значения «да» или «нет» («истина» или «ложь»).
Для полей числового и символьного типов требуется определять ширину, а иногда (для чисел) формат (целое, с плавающей точкой и т.д.)
Одна запись содержит информацию об одном объекте таблицы (дни 15.03.99, 16.03.99..)
Таблица имеет главный ключ, отличающий записи друг от друга. Ключом может быть одно поле (простой ключ) или несколько полей (составной ключ).
Закрепление нового материала.
Определить типы всех полей, главный ключ в таблицах «Погода», «Подписка».
Определить структуру (состав полей), ключи и типы полей для реляционных БД под названиями:
«Телефонный справочник»;
«Страны мира»;
«Мои одноклассники» (совместно).
4.
ДЗ.
Конспект. Составить структуру
БД «Мои друзья».
Базы данных. Урок 2.
Тема: СУБД.
Цель урока:
Образовательная: Сообщение нового понятия: СУБД. Ознакомление с режимами работы и основными объектами СУБД ACCESS: таблица, форма, запрос, отчёт. Закрепление понятий объект, поле, запись, главный ключ, типы полей.
Развивающая: формирование умений работы с формой и таблицей: заполнение, добавление и удаление записей.
Воспитательная: воспитание положительного интереса к программированию.
Тип урока: комбинированный.
Оборудование:
таблицы «Погода», «Подписка»;
компьютер;
программный пакет MS Offise;
демонстрационная БД «Поликлиника».
Организационный момент.
Проверка ДЗ.
а) Самостоятельная работа:
1 вариант.
- Определение БД;
Различие между фактографической и документальной БД;
Понятие «главный ключ». Виды ключей. Примеры.
Составить структуру таблицы «Мои одноклассники»: названия, типы полей, главный ключ.
2 вариант.
Определение информационной системы (примеры);
Определение реляционной БД. Понятие поля, записи;
Типы полей (примеры);
Составить структуру таблицы «Телефонный справочник»: названия, типы полей, главный ключ.
б) Фронтальный опрос (те же вопросы).
Изложение нового материала.
СУБД – программное обеспечение, предназначенное для работы с БД.
Существует множество различных СУБД. У каждой – свои режимы работы и системы
команд.
Режимы работы:
Проектировочный: создаётся структура БД, назначаются типы полей, главный ключ, устанавливаются необходимые связи.
Эксплуатационный: ввод информации, получение различных справок, отчетов и т.д. Изменение структуры БД невозможно.
Каждая команда имеет своё имя и набор параметров (данные, у которыми она оперирует).
СУБД ACCESS.
Приложение пакета программ «MS Offise»: MS ACCESS.
Основные объекты MS ACCESS:
Таблицы – для хранения данных. В одной БД может быть несколько взаимосвязанных таблиц.
Формы – для ввода данных в таблицы: упрощают ввод, исключают ошибки.
Запросы – для получения справочной информации из таблиц. Позволяют обрабатывать данные: фильтровать, сортировать, объединять и т.д.
Отчёты – для вывода данных на принтер в удобном и наглядном виде.
Режимы работы выбираются при помощи кнопок:
Открыть – открывает избранный объект для внесения записей, изменений (эксплуатационный режим).
Конструктор – открывает избранный объект, чтобы изменить его структуру (проектировочный режим).
Создать – служит для создания структуры новых объектов (проектировочный режим).
Работа с объектами:
Выделить объект (таблица, запрос, отчёт, форма)
Выделить название объекта.
Выбрать режим (открыть, создать, конструктор).
Выполнить работу.
Закрыть с сохраением.
4. Закрепление нового материала:
Практическое задание в БД «Поликлиника» (выполняется совместно, «шаг в шаг»)
Открыть БД MS ACCESS.
Выбрать объект «Таблицы»
Выбрать таблицу «Врачи»
Кнопка Открыть.
Добавить врача.
Закрыть с сохранением.
Выбрать таблицу «Пациенты» ---- Открыть.
Ввести 3 пациента, соблюдая формат ввода.
Удалить 2 пациента ----- Закрыть с сохранением.
Выбрать таблицу «Посещение» ---- Открыть.
Ввести два разных посещения своего пациента --- Закрыть с сохранением.
Выбрать объект Формы.
Выбрать форму «Пациенты» ----- Открыть
Ввести два пациента, одного затем удалить
Закрыть с сохранением.
Проверить таблицу «Пациенты»
5. ДЗ.
Подготовка по конспекту. Создать структуру БД «Библиотека» (поля, типы, главный ключ)
Базы данных. Урок 3.
Тема: Условия поиска и простые логические выражения.
Цель урока:
Образовательная: Сообщение новых понятий: условие поиска, логическое выражение. Ознакомление учащихся с различными формами логических выражений, вычисление логических отношений для разных типов данных. Понятие лексиграфического порядка.
Развивающая: развитие логического мышления при составлении логических выражений при работе с запросами.
Воспитательная: воспитание культуры оформления работ.
Тип урока: комбинированный.
Оборудование:
таблицы «Погода», «Подписка»; «Факультативы», «Успеваемость»
компьютер;
программный пакет MS Offise;
демонстрационная БД «Поликлиника».
Организационный момент.
Проверка ДЗ.
Фронтальный опрос:
Понятие СУБД, режимы работы СУБД (доп. Что образует запись в таблице: поле, имя поля, строку, ячкйку?);
Основные объекты СУБД (доп. Тип поля (числовой, текстовый..) в БД определяется: названием поля, шириной поля, количеством строк, типом данных)
Режимы работы с СУБД (доп. Сколько полей в БД – любая таблица)
3. Изучение нового материала.
Для формирования запроса требуются не все записи БД, а только часть из них, удовлетворяющая какому-то условию. Это условие называется условием поиска, которое записывается в форме логического выражения.
Логическое выражение – это некоторое высказывание, по поводу которого можно заключить истинно оно или ложно.
Результатом вычисления логического выражения является одно из двух значений: истина (true) или ложь (false).
Примеры логических выражений:
Осадки=Дождь
Давление > 740
Название издания = Звезда
Цетоводство
Выражения, связанные знаками отношений (>,<,=, <>,>=,<=) называются отношениями.
Простое логическое отношение - состоит из одного отношения или одной логической переменной.
При сравнении символьных величин сравниваются их внутренние коды.
Существуют кодировочные таблицы с кодами всех символов. Символы и буквы располагаются в порядке возрастания: 1,2, 3.. a, b,c, d,.., а,б,с,д.. Такой принцип расположения называется лексиграфическим порядком.
Сравнение осуществляется посимвольно до первой пары неодинаковых символов.
конверт < конвульсия
компонент > квартет
Поля Дата и Время сравниваются в соответствии с календарной последовательностью:
3.12.56 < 23.04.65
22.09.80 >25.08.79
Для логических выражений: true > false (1>0)
Формирование отношений:
. запрос Дата для Осадки=Дождь
(вывести в запрос даты, когда шёл дождь)
Дата |
18.03.99 |
Закрепление нового материала.
Сформировать логические выражения (условия) для запросов:
.запрос Дата,Влажность для Давление>745
(вывести в запрос даты и значения влажности, когда давление было > 745)
Дата |
Влажность |
15.03.99 |
67 |
16.03.99 |
750 |
19.03.99 |
760 |
.запрос Фамилия, Название издания для Фамилия > М
(вывести в запросе Фамилию и Название издания для всех фамилий после буквы М)
Фамилия |
Название издания |
Орлов |
Маяк |
Попов |
Звезда |
Рыкова |
Семья |
.запрос Фамилия для Танцы
(вывести в запросе список фамилий учеников, посещающих танцы)
Фамилия |
Русаков |
Зотова |
Шляпина |
.запрос Ученик для Русский+История+Музыка > Алгебра+Химия+Физика
(вывести учеников, у которых сумма баллов по гуманитарным предметам больше, чем по естесственным)
Ученик |
Ботов |
Галкина |
ДЗ
Подготовка по конспекту.
Базы данных.
Формы.
Формы используются для следующих целей:
Ввода данных в таблицу
В качестве специального диалогового окна для выбора, предварительного просмотра и печати нужного отчета.
Кнопочная форма для открытия других форма и отчетов.
Создание формы.
I.
Создание формы с помощью Автоформы.
С
помощью автоформ можно создавать формы,
в которых выводятся все поля и записи
базовой таблицы или запроса.
Если выбранный источник
записей имеет связанные
таблицы или запросы, то в форме также
будут присутствовать все поля и записи
этих источников записей.
В окне базы данных щелкните значок Формы в списке Объекты.
Нажмите кнопку Создать на панели инструментов окна базы данных.
В диалоговом окне Новая форма выберите один из следующих мастеров.
Автоформа: в столбец — каждое поле располагается на отдельной строке; подпись находится слева от поля.
Автоформа: ленточная — поля, образующие одну запись, расположены в одной строке; их подписи выводятся один раз в верхней части формы.
Автоформа: табличная — Поля записей расположены в формате таблицы, где каждой записи соответствует одна строка, а каждому полю — один столбец. Имена полей служат заголовками столбцов.
Выберите таблицу или запрос, содержащие данные, на которых нужно основать форму.
Нажмите кнопку OK.
*Microsoft Access применяет к форме автоформат, который использовался последним. Если до этого формы с помощью мастера не создавались и не использовалась команда Автоформат в меню Формат, будет применяться стандартный автоформат.
II. Создание
формы с помощью мастера.
Мастер задает подробные вопросы об
источниках записей, полях, макете,
требуемых форматах и создает форму на
основании полученных ответов.
В окне базы данных щелкните значок Формы в списке Объекты.
Нажмите кнопку Создать на панели инструментов окна базы данных.
В диалоговом окне Новая форма выберите Мастер форм.
Выберите имя таблицы или другого источника записей, содержащего данные, на которых должна быть основана форма.
Нажмите кнопку OK.
Следуйте инструкциям, выводимым в диалоговых окнах соответствующего мастера.
Созданную форму можно изменить в режиме конструктора.
III. Изменение формы
в режиме конструктора.
Форма состоит из разделов и элементов управления.
Разделы формы и элементов управления.
1. Панель элементов – содержит
заготовки и инструменты для создания
элементов управления.
а) переключатели
сортировка по весу
б)флажки – то
же, что и переключатели, но допускают
еще и множественный выбор
в) список
– может содержать фиксированный набор
значений из заданного поля. Позволяет
не вводить данные, а выбирать их из
списка.
г) поле со списком – список
в одну строку с раскрывающей кнопкой
д)
командные кнопки – связаны с определенной
командой, например, печать.
е) вкладки
– позволяют разместить много информации
на ограниченной площади. На вкладках
могут быть свои элементы управления.
2. Разделы:
а) заголовок формы;
б)
область данных;
в) примечание.
Элементы управления - все, что
содержится в области данных.
а)
связанное поле – то, что в него вводится
сразу поступает в таблицу БД.
б)присоединенная
надпись.
Фоновый рисунок, лежащий под элементами управления, определяющих размер рабочего поля формы, который можно изменять с помощью мыши.
В режиме конструктора можно выполнять:
а) Перемещение, изменение размера и
выравнивание элементов.
б) Изменение
надписи или источника данных.
в)
Добавление поля или элемента управления.
г)
Изменение типа элемента управления.
На странице приведен фрагмент.
Автор: Банишева Ольга Викторовна
→ 1olga 15.02.2011 4 7392 1947 |
Спасибо за Вашу оценку. Если хотите, чтобы Ваше имя
стало известно автору, войдите на сайт как пользователь
и нажмите Спасибо еще раз. Ваше имя появится на этой стрнице.