Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

Лабораторная работа ’1 [2] Автоматизация заполнения базы данных в Microsoft Excel c помощью VB

Работа добавлена на сайт samzan.net:

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 27.11.2024

PAGE  31

Компьютерные информационные технологии:  лабораторные работы

Содержание

Для перехода к нужной работе щелкните ссылку на нее левой клавишей мыши с удерживанием клавиши CTRL

[1] Лабораторная работа №1

[2] Автоматизация заполнения базы данных в Microsoft Excel c помощью VBA.

[2.1] Цель работы:  освоить в Microsoft Excel следующие приемы:

[2.2] Выполнение работы

[3] Лабораторная работа № 2

[4] Преобразование списка Microsoft Excel в формат Microsoft Access

[4.1] Цель работы:

[5] Лабораторная работа №3

[6] Работа с имеющейся  на диске базой данной в СУБД ACCESS.

[6.1] Цель работы: в среде СУБД освоить следующие приемы:

[6.2] Выполнение работы

[7] Лабораторная работа №4

[8] Создание новых таблиц в СУБД ACCESS.

[8.1] Цель работы: в среде СУБД ACCESS освоить следующие приемы:

[8.1.1] Выполнение работы

[8.1.1.1] Контрольные вопросы

[9] Лабораторная работа №5

[10] Создание запросов в СУБД ACCESS.

[10.1] Цель работы: в среде СУБД ACCESS освоить следующие приемы:

[10.1.1] Теоретические положения

[10.1.2] Выполнение работы

[10.1.2.1] Контрольные вопросы

[11] Лабораторная работа №6

[12] Создание запросов на изменение в СУБД ACCESS.

[12.1] Цель работы: в среде СУБД ACCESS освоить следующие приемы:

[12.1.1] Теоретические положения

[12.1.2] Выполнение работы

[13] Создание запроса на удаление записей.

[14] Лабораторная работа №7

[15] Создание форм в СУБД ACCESS.

[15.1] Цель работы: научиться в среде СУБД ACCESS разрабатывать формы,  освоить следующие приемы:

[15.1.1] Выполнение работы

[15.1.1.1] Контрольные вопросы

[15.1.1.2] 1.  Что такое форма и каково ее назначение?

[15.1.1.3] 2.  Как быстро и удобно создавать простые формы?

[16] Лабораторная работа №8

[17] Создание отчетов в СУБД ACCESS.

[17.1] Цель работы: научиться в среде СУБД ACCESS быстро и профессионально готовить отчеты,  освоить следующие приемы:

[17.1.1] Теоретические положения

[17.2] Разделы отчета

[17.2.1] Выполнение работы

[17.2.1.1] 2.Создание суммарного отчета по сгруппированным данным с помощью мастера отчетов.

[17.2.1.2] Контрольные вопросы

[18] Лабораторная работа №9

[19] Проектирование и создание базы данных в СУБД ACCESS из указанных атрибутов (полей).

[19.0.1] Теоретические положения

[19.0.2] Выполнение работы

[20] Лабораторная работа №10

[21] Проектирование и создание базы данных в СУБД ACCESS по своей предметной области.

[21.0.1] Выполнение работы

[21.0.1.1] Контрольные вопросы

[22] Лабораторная работа №11

[23] Разработка макросов в СУБД ACCESS. Создание стартовой кнопочной формы.

[23.0.1] Теоретические положения

[23.0.2] Выполнение работы

[24] Лабораторная работа №12

[25] Защита базы данных

[25.0.1] Теоретические положения

[26] Защита на уровне пользователей

[27] Лабораторная работа №13

[28] Изучение объектов DAO на примере разработки приложения.

[28.0.1] Теоретические положения

Лабораторная работа №1

Автоматизация заполнения базы данных в Microsoft Excel c помощью VBA.

Цель работы: освоить в Microsoft Excel следующие приемы:

1) повторить (изучить) в VBA EXCEL разработку приложения с использованием стандартных объектов VBA;

2) последовательное заполнение плоской базы данных через пользовательскую форму.

Выполнение работы

1. Создание пользовательской формы для заполнения базы данных туристов.

Для заполнения базы данных на рабочем листе с помощью редактора VBA (вызывается командой Разработчик/ Visual Basic) создадим диалоговое окно регистрация туристов фирмы "Эх, прокачу'" (рис. 1).

Для этого:

– в редакторе VBA вставить объект UserForm1 (вызывается из строки меню Insert – команда  UserForm).

– на объекте UserForm1 из панели элементов ToolBox (строки меню ViewToolBox) разместить следующие объекты так, как показано на рисунке 1: Label (надпись), TextBox (поле), SpinButton (Счетчик), ComboBox (поле со списком), CommandButton (кнопка) и Frame (фрейм или рамка).  В одном из фреймов разместить объекты СheckBox (флажок), а во втором – объекты OptionButton (переключатель).

– для создания необходимых надписей на русском языке так, как показано на рисунке 1, можно воспользоваться свойством Caption, имеющемся у всех перечисленных выше объектов. Свойство Caption отображает текст, необходимый пользователю, в надписи объекта. Программа же обращается к объекту по его имени, отображаемом в свойстве Name.

Рис. 1. Диалоговое окно – Регистрация туристов фирмы "Эх, прокачу!"

2. Разработаем программный код (приведен ниже). При этом необходимо разобраться с назначением  каждой процедуры кода.

3. Сохраним программу и запустим ее на выполнение

4. Заполним в Excel созданную базу данных пятью записями через пользовательскую форму.

5. Создадим кнопку «Вызов формы» в Excel для активизации пользовательской формы без загрузки редактора VBA. Для этого в меню Элементы управления найдем объект Кнопка, поместим его на активный рабочий лист, изменим надпись на кнопке на «Вызов формы» с помощью команды правой кнопки мыши Свойства – Сaption, дважды щелкнем левой клавишей мыши по Кнопке и перейдем в редактор VBA. В открывшемя листе кода запишем команду UserForm1.Show для отображения пользовательской формы, сохраним проект и запустим на выполнение.

При инициализации диалогового окна программа проверяет, есть ли заголовки у полей создаваемой базы данных о регистрации туристов. Если этих заголовков нет, то программа автоматически создает их. Обратите внимание, что у окна приложения появилось пользовательское имя Регистрация. База данных туристов.

Обсудим, как приведенная ниже программа решает перечисленные задачи и что происходит в программе.

Событие Initialize объекта

UserForm1

1. Активизирует диалоговое окно.

2. Назначает клавише <Esc> функцию кнопки Отмена, а клавише <Enter> — Вычислить.

3. Назначает кнопкам ОК, Отмена всплывающие подсказки.

4. Закрепляет первую строку так, чтобы она всегда отображалась на экране.

5. Создает заголовки полей базы данных, если они еще не были созданы.

6. Заполняет раскрывающийся список.

7. Устанавливает текст заголовка окна приложения.

Нажатие кнопки ОК запускает на выполнение процедуру

CommandButton1.Click

1. Определяет номер первой пустой строки в базе данных о регистрации туристов, куда будет введена новая запись.

2. Считывает данные из диалогового окна. 3. Вводит их в первую пустую строку.

Нажатие кнопки Отмена запускает на выполнение процедуру

CommandButton2.Click

Закрывает диалоговое окно. Устанавливает заголовок приложения, используемый по умолчанию, т. е. удаляет пользовательский заголовок приложения, созданный при активизации формы.

SpinButton1.Change

Вводит значение в поле Продолжительность тура.

Заголовок Рабочего Листа

Создает заголовки полей базы данных о регистрации туристов. Эти заголовки отображаются с примечаниями.

ПРОГРАММНЫЙ КОД:

Private Sub CommandButton1_Click()

' Процедура считывания информации из диалогового окна

' и записи ее в базу данных на рабочем листе

' Смысл переменных однозначно определен их названиями

Dim Фамилия As String * 20

Dim Имя As String * 20

Dim Пол As String * 3

Dim ВыбранныйТур As String * 20

Dim Оплачено As String * 3

Dim Фото As String * 3

Dim Паспорт As String * 3

Dim Срок As String * 3

Dim НомерСтроки As Integer

' Номер Строки - номер первой пустой строки рабочего листа

НомерСтроки = Application.CountA(ActiveSheet.Columns(1)) + 1

' Считывание информации из диалогового окна в переменные

With UserForm1

Фамилия = .TextBox1.Text

Имя = .TextBox2.Text

Срок = .TextBox3.Text

If .OptionButton1.Value = True Then

Пол = "Муж"

Else

Пол = "Жен"

End If

If .CheckBox1.Value = True Then

Оплачено = "Да"

Else

Оплачено = "Нет"

End If

If .CheckBox2.Value = True Then

Фото = "Да"

Else

Фото = "Нет"

End If

If .CheckBox3.Value = True Then

Паспорт = "Да"

Else

Паспорт = "Нет"

End If

ВыбранныйТур = .ComboBox1.List(.ComboBox1.ListIndex, 0)

End With

' Ввод данных в строку с номером Номер Строки рабочего листа

With ActiveSheet

.Cells(НомерСтроки, 1).Value = Фамилия

.Cells(НомерСтроки, 2).Value = Имя

.Cells(НомерСтроки, 3).Value = Пол

.Cells(НомерСтроки, 4).Value = ВыбранныйТур

.Cells(НомерСтроки, 5).Value = Оплачено

.Cells(НомерСтроки, 6).Value = Фото

.Cells(НомерСтроки, 7).Value = Паспорт

.Cells(НомерСтроки, 8).Value = Срок

End With

End Sub

Private Sub CommandButton2_Click()

' Процедура закрытия диалогового окна

' Установка заголовка окна приложения по умолчанию

UserForm1.Hide

Application.Caption = Empty

End Sub

Private Sub SpinButton1_Change()

' Процедура ввода значения счетчика в поле ввода

With UserForm1

.TextBox3.Text = CStr(.SpinButton1.Value)

End With

End Sub

Private Sub TextBox3_Change()

' Процедура установки значения счетчика из поля ввода

With UserForm1

.SpinButton1.Value = CInt(.TextBox3.Text)

End With

End Sub

Private Sub UserForm_Initialize()

' Процедура вызова диалогового окна

' и задание элементов раскрывающегося списка

ЗаголовокРабочегоЛиста

' Задание пользовательского заголовка окна приложения

Application.Caption = "Регистрация. База данных туристов"

' Закрытие строки формул окна Excel

Application.DisplayFormulaBar = False

' Задание элементов раскрывающегося списка

With CommandButton1

.Default = True

.ControlTipText = "Ввод данных в базу данных"

End With

With CommandButton2

.Cancel = True

.ControlTipText = "Кнопка отмены"

End With

OptionButton1.Value = True

With ComboBox1

.List = Array("Лондон", "Париж", "Берлин")

.ListIndex = 0

End With

' Активизация диалогового окна

UserForm1.Show

End Sub

Sub ЗаголовокРабочегоЛиста()

' Процедура создания заголовков полей базы данных

' Если заголовки существуют, то досрочный выход из процедуры

If Range("A1").Value = "Фамилия" Then

   Range("A2").Select

   Exit Sub

End If

' Если заголовки не существуют, то создаются заголовки полей

ActiveSheet.Cells.Clear

Range("A1:H1").Value = Array("Фамилия", "Имя", "Пол", _

"Выбранный Тур", "Оплачено", "Фото", "Паспорт", "Срок")

Range("А:А").ColumnWidth = 12

Range("D:D").ColumnWidth = 14

' Закрепляется первая строка с тем, чтобы она всегда

' отображалась на экране

Range("2:2").Select

ActiveWindow.FreezePanes = True

Range("A2").Select

End Sub

Контрольные вопросы

  1.  Что такое плоская база данных?
  2.  Какие объекты VBA были использованы при разработке пользовательской формы?
  3.  Каковы основные свойства этих объектов?
  4.  Какие типы данных использованы при написании программного кода?
  5.  Как и для чего был использован объект Счетчик (SpinButton)?
  6.  Каково назначение в приложении объекта Поле со списком (ComboBox)? Какой командой Поле со списком заполняется данными в разработанном приложении?
  7.  В чем различие между инструкциями Exit Sub и End Sub?
  8.  Какая процедура переносит данные о туристах из пользовательской формы на рабочий лист Excel?

Лабораторная работа № 2

Преобразование списка Microsoft Excel в формат Microsoft Access

 

Цель работы:

1) научиться преобразовывать список EXCEL в файл базы данных ACCESS

2) ознакомиться с  базовыми  понятиями  среды  MS ACCESS

Чтобы преобразовать список Microsoft Excel в ACCESS, необходимо иметь установленную на компьютере СУБД Microsoft Access.

Список Excel – это  набор строк, содержащий взаимосвязанные данные.

Таблица Access – это объект, который определяется и используется для хранения данных. Каждая таблица включает информацию об объекте определенного типа. Она состоит из полей (столбцов) и записей (строк).

Выполнение работы

Задача: преобразование списка MS Excel (базы данных Книги) в формат MS Access.

  1.  Разработайте в EXCEL базу данных, содержащую сведения о книгах и состоящую из следующих полей (поля соответствуют заголовкам столбцов):
  •  Код книги  
  •  Название  
  •  Пол
  •  Автор  
  •  Объем 
  •  Год издания 
  •  Код издательства
  •  Стоимость

Заполните базу данных в EXCEL записями (записи соответствуют строкам таблицы), используя команду Форма из меню Данные, и сохраните файл под именем   Книги   в вашей сетевой папке.

Код книги

Название

Автор

Объем

Год издания

Код издательства

Стоимость

1

Педагогика

Беспалько

340

1994

1

24 000р.

2

Сборник задач

Сканави

634

1992

2

60 000р.

3

Программирование

Арсак

273

1989

3

18 000р.

4

Язык АДА

Перминов

278

1987

1

16 000р.

5

Операционные системы

Грибанов

446

1991

4

23 000р.

6

БД на Паскале

Ульман

563

1992

2

32 000р.

  1.  Откройте приложение MS Access и выполните следующие действия:

- Выберите пункт  Новая база данных. В поле имя файла укажите  Библиотека, укажите место хранения  новой базы данных – ваша сетевая папка и нажмите кнопку Создать. Появится окно базы данных MS Access.

-  Выберите вкладку Внешние данные.

-  В группе Импорт выберите  

- В появившемся окне Внешние данные:

укажите имя импортируемого файла – Книги, тип файлов  – файлы Microsoft Excel, путь доступа к файлу – ваша сетевая папка с лабораторными работами

установите переключатель «Импортировать данные источника в новую таблицу в текущей базе данных».

нажмите ОК.

  1.  В появившемся окне Импорт электронной таблицы выполняйте действия по шагам, указываемым мастером переноса данных. При этом укажите, что:

– первая строка содержит заголовки столбцов,  

     – данные необходимо сохранить в новой таблице,

     – определите ключ – Код книги,

     – сохраните полученную таблицу базы данных Библиотека, например, под именем Книги.

  1.  Откройте созданную таблицу, дважды щелкнув по ее имени в разделе Таблицы, и убедитесь, что все данные перенесены правильно.
  2.  Аналогично создайте таблицу с именем  Издательства.
  3.  Выполните команду Работа с базами данных- Схема данных.  Вызвав контекстное меню правой кнопкой мыши, добавьте созданные таблицы на схему данных.

.

  1.  Установите связь между таблицами, перетащить курсор мыши с нажатой левой клавишей от поля Код издательства таблицы Издательства на поле Код издательства таблицы Книги. Откроется окно “Изменение связей” и автоматически будет определен тип связи Один-ко-многим. Установить переключатель «Обеспечить целостность данных». Нажать кнопку “Создать”. Будет создана связь

Обратите внимание, что файлы баз данных Access-2007 имеют расширения accdb. Файлы баз данных Access более ранних версий имеют формат  mdb.

База данных – это реализованная с помощью компьютера модель данных, отражающая состояние объектов и их отношения. База данных (БД) предполагает наличие комплекса программных средств, обслуживающих ее и позволяющих использовать содержащуюся в ней информацию. Такие комплексы программ называют СУБД (системами управления базами данных).

В Access база данных – это файл, в котором хранятся все объекты, необходимые для обеспечения работы пользователя: таблицы, запросы, формы, отчеты, страницы доступа к данным, макросы и модули.

СУБД – это программа, предназначенная для создания БД и обработки информации в этих БД. СУБД Access – система управления реляционной базой данных (т. е. xpaнят информацию в нескольких связанных (related) между собой таблицах).

Все управление базой данных осуществляется в Окне базы данных, появляющемся при открытии БД. Это окно содержит основные объекты Access: таблицы, запросы, формы, отчеты, макросы и модули. В строке заголовка окна всегда отображается имя открытой или создаваемой БД.

Работать с таблицей MS ACCESS можно в двух основных режимах: в режиме конструктора и в режиме таблицы (можно выбрать из контекстного меню).

 Режим таблицы используется для просмотра, добавления, изменения, сортировки и удаления данных.

В режиме конструктора задается структура таблицы, т.е. определяются типы, свойства полей, их число и названия (заголовки столбцов). Он используется для изменения только структуры таблицы. Ниже показан вид таблицы Группы по маске1 базы данных Библиотека в режиме конструктора.

В режиме конструктора верхняя часть окна содержит список полей таблицы.

В столбце Имя поля указаны имена полей, выбранных при создании таблицы. Обратите внимание, что они не содержат пробелов. По имени будет осуществляться доступ к данным. Имя можно набирать русскими буквами.

В столбце Тип данных указан тип данных, содержащихся в поле.

В столбце Описание может быть представлено краткое описание каждого поля.

 Обратите внимание на значок ключевого поля слева от поля Группа. Ключевое поле используется для однозначной идентификации каждой записи таблицы (в таблице не должно быть двух или более записей, имеющих одинаковое значение в ключевом поле). По ключевым полям таблицы можно связывать друг с другом.

В нижней части окна представлена таблица, содержащая свойства активного поля,  в данном случае – поля Код книги. Рассмотрим основные из этих свойств.

1. Размер поля. Свойство Размер поля определяет размер или величину значений, которые могут быть введены в это поле.

Для числового типа данных свойство Размер поля может принимать значения из следующего списка:

  •  Байт – целые числа в пределах от 0 до 255, занимает 1 байт памяти.
  •  Целый – целые числа (без десятичных знаков) от 32 768 до 32 767, занимает 2 байта памяти.
  •  Длинное целое (4 байта)  –  целые числа oт  2 147 483 648 до 2 147 483 647.
  •  Одинарное с плавающей точкой (4 байта) – числа в пределах от  –3,4Е+38 до –1,4Е–45 для отрицательных значений и положительные числа от 1,4Е–45 до 3,4+E38.
  •  Двойное с плавающей точкой (8 байт) – от 1,72Е+308 до –4,9Е-324 для отрицательных значений;     от 4,9Е–324 до 1,79Е+308 для положительных  значений
  •  Действительное (12 байт) – формат, обеспечивающий наибольшую точность представления данных. Можно использовать до 28 знаков после запятой. Диапазон значений от               –10Е28–1  до 10Е28–1.
  •  Код репликации – GUID, Globally unique identifier (уникальный глобальный идентификатор) длиной 16 байт.

Для текстового типа данных длина поля – 255 символов.

Для типа данных Мемо длина поля – 65535 символов.

2. Формат поля (формат отображения) используется для вывода данных в формах и запросах. Существует набор специальных символов формата, которые задают вид и размер выводимых строк.

3. Маска ввода позволяет задать вид строки при наборе данных.

4. Подпись поля (Caption) – это второе имя поля, которое можно использовать в таблицах и формах. Подпись может состоять из нескольких слов и быть более понятной, нежели обычное имя поля.

5. Значение по умолчанию. Чаше всего такой параметр необходим для числовых или логических полей, когда изначально необходимо наличие данных.

6. Условие на значение и Сообщение об ошибке. С помощью инструмента Построителя выражений можно сформировать ограничения на значения поля. Это должно быть выражение логического типа. Условие должно иметь смысл применительно к поставленной перед разработчиком задаче. Формирование этого параметра - часть алгоритма функционирования базы данных. Таким образом. можно решить некоторые проблемы, не прибегая к программированию.

Например, для ввода числа градусов (величины угла) можно предусмотреть такое ограничение:

>1 And <360  

Если пользователь введет число, не удовлетворяющее этим условиям, программа выведет на экран сообщение об ошибке. Для этого сообщения надо задать строку в параметре Сообщение об ошибке. В нашем примере это может быть такая фраза: «Введите число от 1 до 360».

7. Обязательное поле. Если эта опция выбрана, при заполнении новой записи пользователь обязательно должен ввести какие-нибудь данные. В противном случае программа будет выводить «ругательные» сообщения, пока пользователь не введет данные.

 8. Индексированное поле. Этот параметр может иметь одно из трех значений.

1.    Поле не индексировано.

2.    Поле индексировано, допускаются повторяющиеся значения.

3.    Поле индексировано, не допускаются повторения значений поля.

Чаше всего это свойство используют для запрета повторяющихся значений. Например, если создается база данных для почтовой рассылки, то необходимо запретить повтор значений в поле «Электронный адрес», иначе один адресат может получить несколько одинаковых писем.

 

Контрольные вопросы

  1.  Как преобразовать список EXCEL в формат  Microsoft Access?
  2.  Для чего предназначены режим таблицы и режим конструктора?
  3.  Какие типы данных были использованы в Microsoft Access для созданной таблицы в базе данных «Библиотека»?
  4.  Какие основные свойства, например, числового типа данных, Вы можете назвать?

Лабораторная работа №3

Работа с имеющейся  на диске базой данной в СУБД ACCESS.

Цель работы: в среде СУБД освоить следующие приемы:

  •  открывать базу данных;
  •  просматривать записи БД;
  •  использовать форму для ввода данных и их редактирования;
  •  пользоваться фильтром для поиска конкретных записей;
  •  сортировать записи по алфавиту и по возрастанию или убыванию числовых параметров.

Выполнение работы

  1.  Открытие базы данных и просмотр записей.
  •  Запустите Microsoft Access и откройте БД Борей.mdb,
  •  Откройте таблицу Сотрудники
  •  Пролистайте данные с помощью навигационных кнопок.
  •  Выведите  на экран   представление данных  в режиме конструктора.
  •  Измените ширину столбцов, чтобы увидеть максимум информации в табличном представлении

  1.  Ввод данных в форму и их редактирование.
  •  На работу принят новый сотрудник. В разделе Объекты базы данных – Формы выбрать форму Сотрудники и вывести на экран чистый бланк (новая запись).
  •  Введите базовую информацию о новом сотруднике (ФИО, должность и др.) Обратите внимание на ввод поля типа OLE, содержащего фотографию работника. Она может быть предварительно отсканирована , а затем вставлена в виде  рисунка BMP. Если нет файла с фотографией, вставьте любой рисунок.
  •  Переключившись на другую страницу (с личными данными) щелчком мыши, введите дополнительную информацию (дата рождения, адрес и т.д.)
  •  Предположим, что сотрудница Белова вышла замуж и сменила фамилию на Савченко. Найдите соответствующую запись и внесите в поле Фамилия новое значение.
  •  Один из сотрудников уволился. Переключитесь в табличное представление данных (контекстное меню – таблица), выделите строку со сведениями об этом сотруднике , а затем удалите ее, нажав клавишу DEL.

  1.  Поиск записей

Вы обнаружили на столе заявление об отпуске, но подпись сотрудника неразборчива, так что Вы четко различаете лишь “Кр” в начале фамилии. Выполните поиск и просмотр тех записей, которые отвечают данным признакам:

  •  В режиме Формы выделите поле Фамилия, а затем используйте кнопку “Поиск” (с изображением бинокля) на вкладке Главная группа Найти.
  •  В диалоговом окне Поиск активизируйте переключатель Совпадение “с началом поля”.
  •  Отметьте первую найденную запись и просмотрите все возможные варианты.

  1.  Использование фильтра для нахождения конкретных записей.

Укажите всех сотрудников фирмы, которые пришли на работу в фирму до сентября 1996 года. Используйте фильтр с указанием даты для поиска ответа.

  •  Откройте форму Сотрудники в режиме Формы. Выберите  поле Дата Найма На вкладке Главная группа Сортировка и фильтр из списка Изменить параметры расширенного фильтра выберите Изменить фильтр,
  •  Введите выражение для критерия отбора.
  •  ВыберитеПрименить фильтр
  •  Инициируйте сортировку по возрастанию с помощью кнопки в этой же группе. Для просмотра записей используйте навигационные кнопки.
  •  Переключитесь в режим таблицы и произведите  аналогичную фильтрацию в этом режиме.
  •  Отключите фильтр кнопкой “Удалить фильтр.”

  1.  Сортировка записей с помощью кнопок на панели инструментов.

Сортировка позволяет упорядочить записи таблицы (формы) определенным образом. В отсортированных записях легче отыскать то, что нужно.

В ходе проверки возникла необходимость необходимость выяснить, кто из сотрудников фирмы имеет домашний телефон с первыми цифрами 234. Для этого можно произвести сортировку записей.

  •  В режиме Таблицы щелкните в любой строке столбца Домашний телефон.
  •  Далее нужно отсортировать записи, щелкнув по кнопке По Возрастанию.
  •  Найдите запись с нужным значением номера.
  •  Закройте форму Сотрудники.

Контрольные вопросы

  1.  Как открыть БД в СУБД АССESS?
  2.  Назовите виды представления данных в СУБД АССESS? Чем они отличаются?
  3.  Как добавить новую запись через форму данных?
  4.  Как произвести поиск записей? Дайте письменный ответ на вопрос
  5.  Расскажите, как  и для чего используется фильтр. Дайте письменный ответ на вопрос
  6.  Расскажите, как производится сортировка записей БД. Дайте письменный ответ на вопрос

Лабораторная работа №4

Создание новых таблиц в СУБД ACCESS.

Цель работы: в среде СУБД ACCESS освоить следующие приемы:

-создание новых таблиц;

-создание связей между таблицами;

-установка ключевых полей для таблицы;

-удаление таблиц из базы данных;

-использование полей подстановки при создании таблицы;

-заполнение таблицы записями в режиме таблицы;

Теоретические положения

Существуют следующие способы создания пустой таблицы для последующего ее заполнения собственными данными.

  •  В мастере таблиц выберают поля для новой таблицы из различных образцов таблиц, таких как деловые контакты, личное имущество и т. п.
  •  Создают таблицу в режиме  конструктора, который позволяет добавлять поля, настроить отображение полей и обработку в них данных, а затем создайте первичный ключ (Первичный ключ. Одно или несколько полей (столбцов), комбинация значений которых однозначно определяет каждую запись в таблице. Первичный ключ не допускает значений Null и всегда должен иметь уникальный индекс. Первичный ключ используется для связывания таблицы с внешними ключами в других таблицах.).
  •  Вводят данные непосредственно в пустую таблицу (режим таблицы). При сохранении таблицы Microsoft Access проанализирует данные и автоматически присвоит каждому полю соответствующий тип данных и формат.

Существуют следующие способы создания таблиц на основе существующих данных.

  •  Импорт или связывание данных из другой базы данных Microsoft Access или из файлов других программ.
  •  Создание таблицы на основании данных из текущей таблицы при помощи запроса на создание таблицы. Например, запросы на создание таблиц можно использовать для архивирования старых записей, резервного копирования таблиц, выбора групп записей для экспорта в другую базу данных или для использования в качестве основы для отчетов, отражающих данные в определенный момент времени.

Между таблицами могут быть установлены связи один-к-одному, один-ко-многим  и многие-ко-многим. Информация о каждом типе связи имеется в справочной системе ACCESS. Поля таблиц, используемые для установления связей должны иметь одинаковый тип данных (допускается связь данных типа счетчик с числовым типом), их значения должны отвечать требованию целостности данных в базе данных.

Выполнение работы

В фирме Борей проводится рекламная компания. Персональная ответственность за рекламу определенных товаров возложена на конкретных сотрудников фирмы.

1.Создание новой таблицы

Создайте новую таблицу в режиме конструктора, включающую следующие поля:

Код товара, Рекламируемый товар, Сотрудник, Дата начала компании. Для этого:

  •  Откройте базу данных Борей.
  •  Выберите вкладку Создание – Конструктор таблиц.
  •  В качестве типа данных для поля Код товара выберите тип Счетчик, для поля Рекламируемый товар – тип Текстовый, для поля Сотрудник выберите- Числовой тип (в этом поле хранятся коды сотрудников, выполняющих рекламу),  для поля Дата начала компании – Дата/Время.
  •  Введите описание для каждого поля в столбец Описание. Описание будет появляться в строке помощи при заполнении этого поля данными в режиме открытия таблицы.
  •  В качестве ключевого поля выберите Код товара. Для этого щелкните по кнопке “ Ключевое поля ” на панели инструментов.
  •  Сохраните таблицу под именем Реклама.
  •  Закройте таблицу (CTRL+F4) и убедитесь, что в списке таблиц базы данных имеется таблица Реклама.
  •  Заполните таблицу Реклама  5-ю записями. При заполнении поля Сотрудник используйте коды реальных сотрудников фирмы Борей (уточните по таблице Сотрудники).

2. Установление связи между таблицами.

Один и тот же сотрудник может отвечать за рекламу нескольких товаров. Необходимо создать связь между таблицами Реклама и Сотрудники, а в качестве связующих, использовать поля Сотрудник из таблицы Реклама и Код сотрудника из таблицы Сотрудники. Определите, какую из таблиц сделать первичной.

  •  Выберите вкладку Работа с базами данных - Схема Данных для создания связи между таблицами Сотрудники и Реклама.
  •  Откроется окно “Схема Данных”. Добавьте в него таблицы Реклама и Сотрудники (или только Реклама , если Сотрудники уже там есть). Для этого нужно щелкнуть правой кнопкой мыши по свободному месту в окне “Схема Данных” и выбрать команду Добавить таблицу из всплывающего меню. В окне Добавление таблицы указать таблицу Реклама.
  •  Перетащить курсор мыши с нажатой левой клавишей от поля Код сотрудника таблицы Сотрудники на поле Сотрудник таблицы Реклама. Откроется окно “Изменение связей” и автоматически будет определен тип связи Один-ко-многим. Включить переключатель «Обеспечение целостности данных». Нажать кнопку “Создать”. Будет создана связь.

3. Удаление таблицы из базы данных.

  •  Удалите взаимосвязь между таблицами Сотрудники и Реклама (выделить связь и нажать клавишу Delete).
  •  В разделе Таблицы базы данных, удалите таблицу Реклама (клаиша Delete).

4.  Повторите создание таблицы Реклама в режиме конструктора, изменив тип поля Сотрудник. Вместо Числового типа создайте столбец подстановки фамилий сотрудников из таблицы Сотрудники, выбрав мастер подстановок в столбце Тип данных. Заполните таблицу 5 записями.

Контрольные вопросы

  1.  Как в СУБД ACCESS создать новую таблицу? Назовите все способы создания новой таблицы.
  2.  Что такое ключевое поле и как оно задается?
  3.  Назовите типы связей между таблицами БД? Какой тип отношений и почему был установлен между таблицами Сотрудники и Реклама?
  4.  Как установть связи между двумя таблицами в СУБД ACCESS?
  5.  Как удалить связь между двумя таблицами?
  6.  Как заполнить таблицу записями в режиме таблицы?
  7.  В каком варианте таблицы Реклама заполнение поля Сотрудник  является более удобным? Почему?

Лабораторная работа №5

Создание запросов в СУБД ACCESS.

Цель работы: в среде СУБД ACCESS освоить следующие приемы:

-создание запросов и установка условий отбора;

-сортировка информации и установка в запросе диапазона данных;

-создание запроса на основе связаннных таблиц;

-суммирование данных в запросе;

-установка параметров запроса;

Теоретические положения

Запросы используются для просмотра, изменения и анализа данных различными способами. Запросы также можно использовать в качестве источников записей для форм, отчетов. В Microsoft Access есть несколько типов запросов.

Запросы на выборку

Запрос на выборку является наиболее часто используемым типом запроса. Запросы этого типа возвращают данные из одной или нескольких таблиц и отображают их в виде таблицы, записи в которой можно обновлять (с некоторыми ограничениями). Запросы на выборку можно также использовать для группировки записей и вычисления сумм, средних значений, подсчета записей и нахождения других типов итоговых значений.

Запросы с параметрами

Запрос с параметрами — это запрос, при выполнении отображающий в собственном диалоговом окне приглашение ввести данные, например условие для возвращения записей или значение, которое требуется вставить в поле. Можно разработать запрос, выводящий приглашение на ввод нескольких единиц данных, например двух дат. Затем Microsoft Access может вернуть все записи, приходящиеся на интервал времени между этими датами.

Запросы с параметрами также удобно использовать в качестве основы для форм, отчетов и страниц доступа к данным. Например, на основе запроса с параметрами можно создать месячный отчет о доходах. При печати данного отчета Microsoft Access выводит на экран приглашение ввести месяц, доходы за который должны быть приведены в отчете. После ввода месяца Microsoft Access выполняет печать соответствующего отчета.

Перекрестные запросы

 Перекрестные запросы используют для расчетов и представления данных в структуре, облегчающей их анализ. Перекрестный запрос подсчитывает сумму, среднее, число значений или выполняет другие статистические расчеты, после чего результаты группируются в виде таблицы по двум наборам данных, один из которых определяет заголовки столбцов, а другой заголовки строк. Перекрестный запрос создается с помощью мастера или самостоятельно в режиме конструктора запроса. В бланке запроса нужно указать поля, значения которых будут заголовками столбцов и строк, а также поле, значения которого следует использовать в вычислениях. Существует возможность представления рассчитанных данных в денежном и других форматах.

Запросы на изменение

Запросом на изменение называют запрос, который за одну операцию изменяет или перемещает несколько записей.

Запросы SQL

Запрос SQL — это запрос, создаваемый при помощи инструкций SQL. Язык SQL (Structured Query Language) используется при создании запросов, а также для обновления и управления реляционными базами данных, такими как базы данных Microsoft Access.

Когда пользователь создает запрос в режиме конструктора запроса, Microsoft Access автоматически создает эквивалентную инструкцию SQL. Фактически, для большинства свойств запроса, доступных в окне свойств в режиме конструктора, имеются эквивалентные предложения или параметры языка SQL, доступные в режиме SQL. При необходимости пользователь имеет возможность просматривать и редактировать инструкции SQL в режиме SQL. После внесения изменений в запрос в режиме SQL его вид в режиме конструктора может измениться.

Выполнение работы

Используется база данных Борей.

  1.  Создание запроса с помощью средства ACCESS “Простой запрос” .

Создайте  запрос  “Просмотр заказов” на базе таблицы  «Заказы» в режиме Простой запрос.

  •  Перейдите на вкладку Создание, группа Другие, кнопка Мастер запросов, выберите режим Простой запрос.
  •  Выберите таблицу  «Заказы».
  •  Переместите поля код заказа, код клиента, дата размещения, дата исполнения, название получателя из списка Доступные поля в список Выбранные поля.
  •  Следуйте указаниям мастера.
  •  Сохраните запрос под именем “Просмотр заказов”.

2.  Создание  запроса на выборку в режиме конструктора.

Отдел маркетинга интересуют кондитерские изделия, цена которых не превышает 1500 руб. За единицу. Создайте новый запрос на базе таблицы Товары в режиме конструктора.

  •  Перейдите на вкладку Создание, группа Другие, кнопка Конструктор запросов,
  •  Выберите таблицу  «Товары».
  •  Включите в запрос поля  код типа, марку, цену и поставщика товаров.
  •  Укажите условие отбора для кондитерских изделий в бланке запроса по типу под номером 3.
  •  Введите в бланк запроса  выражение для отбора товара ценой за единицу не более 1500 руб.(<=1500)
  •  Выполните запрос.
  •  Закройте запрос.
  •  Сохраните запрос под именем “ Кондитерские изделия ”.

3. Сортировка данных в запросе и поиск в заданном диапазоне.

Вас интересуют только изделия, имеющиеся на складе в количестве не менее 20 единиц с ценами в интервале от 1000 руб. до 2000 руб. Разместить эти товары в алфавитном порядке.

  •  Создайте новый запрос на основе таблицы Товары.
  •  Включите в запрос поля, содержащие идентификатор товара, его марку, цену единицы и количество товара на складе.
  •  Выполните сортировку данных запроса по марке товара в алфавитном порядке.
  •  Используйте выражение с операторами сравнения для нахождения цен между 1000 и 2000 руб.(>=1000 and <=2000)
  •  Введите в запрос выражение, которое позволит отобрать лишь те товары, число которых на складе составляет не менее 20 единиц.
  •  Выполните запрос.
  •  Сохраните запрос под именем Товары умеренной стоимости, после чего закройте запрос.

4. Создание запроса на основе связанных таблиц.

Получите сведения о заказах из США и видах доставки.

  •  Создайте новый запрос, использовав таблицы Заказы и Доставка.
  •  Включите в запрос поле с указанием кода заказа (из таблицы Заказы).
  •  Включите в поле Страна получателя (из таблицы Заказы) и установите условие отбора, которое позволило бы отобрать все заказы с доставкой в США.
  •  Включите в запрос поле с указанием названия доставки(из таблицы Доставка).
  •  Выполните запрос.
  •  Поскольку все данные Вашего запроса относятся к США, нет необходимости включать название страны в динамический набор данных. Вернитесь в Режим конструктора и “спрячьте” столбец Страна получателя.
  •  Сохраните запрос под именем Доставка в США и закройте его.

5. Суммирование данных в запросе.

Получить сведения о суммах, выплаченных за доставку заказов в США и Францию.

  •  Включите в новый запрос поля из таблицы Заказы, которые содержат сведения о стране получателя,  доставке и затратах на нее.
  •  Выберите команду Итоги на панели инструментов, чтобы добавить в бланк запроса по образцу строку Групповые операции. После этого выделите в ячейке Группировка под полем Стоимость доставки строку SUM.
  •  Выполните запрос.
  •  Сохраните и закройте запрос .

  1.  Включение в запрос параметров.

Создайте запрос в режиме конструктора на базе таблицы Заказы, который содержит поля : код заказа, код клиента, дата размещения, дата исполнения, название получателя.(Этот запрос уже был создан в п.1 под именем “Просмотр заказов”  и можно просто открыть его в конструкторе).

  •  Добавьте в ячейку Условие отбора под полем Дата исполнения заказа параметр, который в дальнейшем будет служить подсказкой при получении информации в диапазоне дат

BETWEEN [ Начало периода ] AND [Конец периода]

  •  Выполните запрос и выведите на экран заказы, должны быть выполнены с 26 по 31 декабря 1996 года.
  •  Сохраните запрос под именем “Заказы за период”и закройте.

  1.  Создание запроса с вычисляемыми полями.

Нужно рассчитать сумму товаров, хранящихся на складе.

  •  С помощью мастера построения простых запросов создайте запрос из таблиц  Товары (поля Код товара, На складе, Цена) и  Типы (поле Категория).
  •  Сохраните запрос под именем Вычисляемые поля.
  •  В режиме конструктора в строке Условие отбора поля Категория введите категорию «фрукты».
  •  В бланке запроса установите курсор в пустое поле.
  •  Нажмите кнопку «Построитель» на панели инструментов. Используя инструменты построителя выражений введите выражение для расчета суммы   Сумма: [Цена]*[НаСкладе].
  •  Выполните запрос.

 Контрольные вопросы

  1.  Что такое запрос?
  2.  Какие способы создания запросов вы знете?
  3.  Как при создании запроса установить условия отбора?
  4.  Как используются выражения в запросе?
  5.  Как сортируются данные в запросе?
  6.  Как осуществить поиск данных в диапазоне значений?
  7.  Как присвоить запросу имя и сохранить его?
  8.  Как создать запрос на базе связанных таблиц?
  9.  Как закрыть поле в запросе?
  10.  Как суммировать данные в запросе?
  11.  Как установить параметры в запросе?

Лабораторная работа №6

Создание запросов на изменение в СУБД ACCESS.

Цель работы: в среде СУБД ACCESS освоить следующие приемы:

  •  Создание запроса на  удаление записи
  •  Создание запроса на  обновление записи
  •  Создание запроса на  добавление записей
  •  Создание запроса на  создание новой таблицы

Теоретические положения

Существует четыре типа запросов на изменение.

  •  На удаление записи.   Запрос на удаление удаляет группу записей из одной или нескольких таблиц. Например, запрос на удаление позволяет удалить записи о товарах, поставки которых прекращены или на которые нет заказов. С помощью запроса на удаление можно удалять только всю запись, а не отдельные поля внутри нее.
  •  На обновление записи.   Запрос на обновление вносит общие изменения в группу записей одной или нескольких таблиц. Например, на 10 процентов поднимаются цены на все молочные продукты или на 5 процентов увеличивается зарплата сотрудников определенной категории. Запрос на обновление записей позволяет изменять данные в существующих таблицах.
  •  На добавление записей.   Запрос на добавление добавляет группу записей из одной или нескольких таблиц в конец одной или нескольких таблиц. Например, появилось несколько новых клиентов, а также база данных, содержащая сведения о них. Чтобы не вводить все данные вручную, их можно добавить в таблицу «Клиенты».
  •  На создание таблицы.   Запрос на создание таблицы создает новую таблицу на основе всех или части данных из одной или нескольких таблиц. Запрос на создание таблицы полезен при создании таблицы для экспорта в другие базы данных Microsoft Access или при создании архивной таблицы, содержащей старые записи.

Выполнение работы

  1.  Разработка запроса на создание таблицы

Требуется создать новую таблицу Неперспективные товары на базе таблицы Товары и включить в нее те товары, поставки которых прекращены.

  •  В режиме конструктора создайте запрос на базе таблицы Товары, включив в него все поля этой таблицы
    •  В поле ПоставкиПрекращены в строке Условие отбора укажите Да (так в запросе устанавливается значение Истина для логического типа данных, можно также использовать выражение Истина)
    •  На вкладке Конструктор, группа Тип запроса выберите Создание таблицы и в появившемся диалоговом окне “Создание таблицы” укажите имя таблицы “Неперспективные товары”, выберите переключатель В текущей базе данных и нажмите кнопку ОК.
    •  Выполните запрос.
    •  Появится сообщение о создании новой таблицы с указанием числа записей, помещаемых в нее. Нужно выбрать Да. В результате будет создана требуемая таблица, которую можно увидеть в группе Таблицы.
    •  Откройте новую таблицу “Неперспективные товары” и просмотрите ее.

  1.  Создание запроса на обновление записей

Фирма Борей решила поднять цены на молочные продукты на 10% по отношению к установленным ранее. Необходимо внести изменения в таблицу Товары.

  •  В режиме конструктора создайте запрос на базе таблицы Товары, включив в него все поля этой таблицы
    •  На вкладке Конструктор, группа Тип запроса выберите Обновление
    •  В поле Цена в строке Обновление напишите выражение [Цена]+[Цена]*0,1
    •  В строке Условие отбора укажите для поля код типа 4, что соответствует Молочным продуктам
    •  Выполните запрос.
    •  Появится сообщение об обновлении записей с указанием их числа
    •  Откройте таблицу “Товары” и просмотрите ее.

  1.  Создание запроса на удаление записей.

Требуется удалить из таблицы Товары те товары, поставки которых прекращены. Это удобно сделать с помощью запроса на удаление записей.

  •  В режиме конструктора создайте запрос на базе таблицы Товары, включив в него все поля этой таблицы
    •  В поле ПоставкиПрекращены в строке Условие отбора укажите Да (или Истина)
    •  На вкладке Конструктор, группа Тип запроса выберите Удаление.
    •  Выполните запрос.
    •  Появится сообщение об удалении записей из таблицы с указанием числа удаляемых записей. Нужно выбрать Да.
    •  Откройте новую таблицу “Товары” и просмотрите ее.

  1.  Создание запроса на добавление записей

Добавим товары из таблицы Неперспективные товары, имеющиеся на складе, в таблицу Товары.

  •  Создайте в режиме конструктора запрос, содержащий таблицу, записи из которой необходимо добавить в другую. Это будет запрос на базе таблицы Неперспективные товары.
    •  В режиме конструктора запроса нажмите стрелку рядом с кнопкой Тип запроса на панели инструментов и выберите команду Добавление. На экране появится диалоговое окно Добавление.
    •  В поле Имя таблицы введите имя таблицы, в которую необходимо добавить записи. Это будет таблица Товары
    •  Выполните одно из следующих действий.

Если таблица находится в открытой в настоящий момент базе данных(это наш случай), выберите параметр в текущей базе данных.

Если таблица не находится в открытой в настоящий момент базе данных(это к общему сведению), выберите параметр в другой базе данных и введите имя базы данных, в которой находится таблица, или нажмите кнопку Обзор, чтобы указать путь к базе данных. Можно ввести путь к базе данных Microsoft FoxPro, Paradox или dBASE, а также строку подключения к базе данных SQL.

  •  Нажмите кнопку OK.
  •  Перетащите из списка полей в бланк запроса поля, которые необходимо добавить или которые будут использоваться при определении условия отбора.

Если в обеих таблицах выделенные поля имеют одинаковые имена, то соответствующие имена автоматически вводятся в строку Добавление. Если имена полей двух таблиц отличны друг от друга, нужно будет указать в строке Добавление имена полей таблицы-получателя.

  •  Для полей, перемещенных в бланк запроса, введите в ячейку Условие отбора условие отбора, по которому будет осуществляться добавление. Нашим условием является наличие товара на складе, т.е. в поле НаСкладе в строке Условие отбора введем условие >0
  •  Для предварительного просмотра добавляемых записей нажмите на панели инструментов в группе Результаты, кнопку Режим и выберите режим таблицы. Для возврата в режим конструктора снова нажмите кнопку Режим на панели инструментов.
  •  Для добавления записей нажмите кнопку Запуск на панели инструментов. Будет выведено сообщение о добавлении записей в таблицу Товары
  •   Просмотрите таблицу Товары

Контрольные вопросы

  1.  Назовите все виды запросов на изменение данных. В чем особенность этих запросов?
  2.  Для чего предназначен и как создается запрос на создание таблицы?
  3.  Для чего предназначен и как создается запрос на обновление записей?
  4.  Для чего предназначен и как создается запрос на добавление записей?
  5.  Для чего предназначен и как создается запрос на удаление записей?

Лабораторная работа №7

Создание форм в СУБД ACCESS.

Цель работы: научиться в среде СУБД ACCESS разрабатывать формы,  освоить следующие приемы:

-добавление в форму подписи;

-добавление в форму связанного элемента управления;

-добавление в форму рисунка;

-создание формы, включающей подчиненную;

-создание командной кнопки;

-создание в форме поля со списком;

-установка свойств, обеспечивающих защиту данных.

Выполнение работы

  1.  Создание простейших форм.

Самыми простыми вариантами являются автоформа и создание простой формы по таблице с помощью мастера форм.

Создайте автоформу по таблице «Заказы» базы данных «Борей» с названием “Информация о заказах

  •  Выделите в группе объектов ACCESS Таблицы таблицу Заказы.
  •  Выберите вкладку Создание, группу Формы, выполните щелчок мышью по кнопке. Форма  
  •  Сохраните форму.

  1.  Создайте с помощью мастера форм простую  форму по таблице «Заказано», используя  все поля этой таблицы.
  •  Выберите вкладку Создание, группу Формы, список Другие формы, элемент мастер форм.
  •  Из списка объектов выберите таблицу Заказано.
  •  Переместите все поля таблицы в список  Доступные поля.
  •  Выберите вид представления данных и стиль оформления формы.
  •  Сохраните форму.

Удобные формы облегчают ввод и получение информации. Следует улучшить некоторые из форм базы данных Борей.

  1.  Добавление в форму надписи.

Усовершенствуем форму Продажи по годам. Включим в форму дополнительную надпись, которая сделает необходимые дополнительные пояснения по использованию этой формы.

  •  Откройте форму Продажи по годам в режиме Конструктора.
  •  Воспользуйтесь элементом Надпись (Label ) панели инструментов, чтобы создать подпись с текстом о том, что эта форма используется лишь в  одноименном отчете.

  1.  Создание подчиненной формы.

Для  того, чтобы иметь сведения обо всех заказах, выполненных с помощью определенного канала доставки, необходимо создать форму с подчиненной формой. Создайте новую форму на основе таблицы Доставка.

  •  На вкладке Создание группа Формы  выберите список Другие формы кнопку Мастер форм.
  •  В первом диалоговом окне не выбирайте таблицу – источник данных (таблица Доставка).
  •  Во втором диалоговом окне сначала выберите из таблицы Доставка поля Доставка и Название, а затем из таблицы Заказы – поля КодЗаказа, ГородПолучателя, СтранаПолучателя, ДатаИсполнения, СтоимостьДоставки.
  •  На следующем этапе выберите тип представления данных по таблице  Доставка (т.е. “по Доставка”- основная форма) и переключатель – подчиненные формы.
  •  Выберите внешний вид подчиненной формы – табличный.
  •  Выберите стиль оформления для формы.
  •  Назовите основную форму – Доставка, а подчиненную – Подчиненная для Доставки.
  •  Выберите открытие формы для  просмотра и ввода данных и просмотрите Заказы по различным видам Доставки.
  •  Введите несколько заказов с типом доставки по почте.

  1.  Создание на форме Списка полей (в режиме мастера).

В форме Доставка целесообразно добавить список с названиями типов доставки заказов, в котором можно будет выбрать интересующий тип доставки. Для создания такого списка:

  •  Выберите элемент управления Список из группы Элементы управления и добавьте его на форму. После этого включается Мастер по созданию списков и нужно следовать его указаниям.
  •  Выберите Поиск записи в форме на основе значения, которое содержит список
  •  Из списка доступных полей выберите Название
  •  В следующих окнах  согласитесь со значениями по умолчанию.
  •  Сохраните изменения в макете формы и закройте его.
  •  Откройте форму в режиме просмотра и заполнения (Открыть) и проверьте работу нового списка.

  1.  Добавление  на форму рисунка.

Дополним форму Товары фирменным знаком компании. Нарисуйте заранее этот знак в графическом редакторе и сохраните в виде файла “ФирмЗнак.bmp

  •  Откройте форму Товары в режиме Конструктора.
  •  Добавьте на форму элемент Рисунок с панели Элементы управления.
  •  Вставьте файл ФирмЗнак.bmp
  •  Если требуется, отрегулируйте размер рисунка, поработайте со свойствами объекта.
  •  Закройте макет формы и сохраните изменения.

6.  Создание командной кнопки.

Форма Сотрудники рассматривается отделом кадров как краткая информация о конкретном сотруднике фирмы. Если необходимо просматривать информацию обо всех заказах, которые курировал данный сотрудник, удобно создать командную кнопку в форме Сотрудники для того, чтобы иметь возможность открыть  ранее созданную нами форму “Информация о заказах”.

  •  Откройте форму Сотрудники(с переводом страницы) в режиме Конструктора.
  •  Создайте командную кнопку в форме с помощью объекта “Кнопка” на панели элементов управления. Выберите категорию “Работа с формой”, действия – “Открытие формы”.
  •  Выберите форму “Информация о заказах” в качестве формы, открываемой кнопкой.
  •  Выберите переключатель “Открыть форму для отобранных записей”.
  •  Укажите связующее поле Код сотрудника.
  •  Разместите на кнопке текст “Заказы по сотруднику”.
  •  Дайте имя кнопке “Заказы”.
  •  Сохраните макет формы и закройте его.
  •  Откройте форму и проверьте работу созданной кнопки.

  1.  Установка дополнительных свойств данных.

Многие формы базы данных Борей основаны на таблице Заказы. Текущая дата размещения заказа должна появляться в таких формах в качестве значения по умолчанию. На дату выполнения заказа должно быть наложено условие.

  •  Откройте таблицу Заказы в режиме конструктора, чтобы установить условия, влияющие на поле “ДатаРазмещения” .
  •  Установите свойство Значение по умолчанию этого поля таким образом, чтобы им стала стала текущая дата ( рекомендуется использовать функцию DATE())
  •  Выделите поле ДатаИсполнения и установите для него Условие на значение так, чтобы дата, введенная в это поле, превосходила дату размещения (> Date()).
  •  Напечатайте сообщение для свойства Сообщение об ошибке с предупреждением о необходимости ввести правильную дату, если нарушено условие на значение.
  •  Сохраните внесенные в конструктор таблицы Заказы изменения.
  •  Откройте некоторые формы, использующие данные этой таблицы и введите несколько записей.

Контрольные вопросы

1.  Что такое форма и каково ее назначение?

2.  Как быстро и удобно создавать простые формы?

3.  Как добавить в форму подпись?

4.  Как добавить в форму рисунок?

5.  Как создаются и используются на форме список полей и комбинированный список?

6.  Как создать командную кнопку?

7.Как создать форму с подчиненной формой?

8.Где и как можно установить дополнительные свойства полей с данными?

Лабораторная работа №8

Создание отчетов в СУБД ACCESS.

Цель работы: научиться в среде СУБД ACCESS быстро и профессионально готовить отчеты,  освоить следующие приемы:

-создание детального отчета без повторов;

-создание отчета по сгруппированным данным;

-использование выражения для описания сумм по группам;

-изменение порядка сортировки;

-распечатка групп данных без разрывов;

-введение иной формы нумерации страниц.

Теоретические положения

Отчет — это гибкое и эффективное средство для организации данных при выводе на печать. С помощью отчета имеется возможность вывести необходимые сведения в том виде, в котором требуется. Больше всего сведений в отчете берется из базовой таблицы, запроса или инструкции SQL, являющихся источниками данных для отчета. Другие сведения вводятся при разработке отчета.

Разделы отчета

Вся информация в отчете разбивается на разделы, каждый из которых имеет специальное назначение. При печати разделы располагаются на страницах в определенном порядке:

  1.  Заголовок отчета
  2.  Верхний колонтитул
  3.  Область данных (данные из таблиц)
  4.  Нижний колонтитул
  5.  Примечание отчета

В режиме конструктора на экране отображается макет каждого раздела отчета в одном экземпляре. При печати некоторые разделы могут неоднократно повторяться. Элементы управления, такие как надпись или поле, находящиеся в разделе, определяют местоположение информации в отчете.

Отчет с группировкой данных позволяет вычислить итоговые значения для групп, а также представить информацию в удобном для использования виде. В этом отчете заказы сгруппированы по дате отгрузки.

Выполнение работы

1.Создание детального отчета с помощью мастера отчетов.

Создайте отчет с указанием  поставщиков определенных товаров. Необходимая информация берется из запроса Товары по поставщикам.

  •  Создайте с помощью мастера простой запрос «Товары по поставщикам» на базе таблиц Товары и Поставщики. Включите в него поле Название (т.е. название поставщика) из таблицы Поставщики и все поля таблицы Товары.
  •  Создайте детальный отчет на базе этого запроса, воспользовавшись мастером отчетов.
  •  Включите в отчет все поля запроса.
  •  Выберите тип представления данных по «Поставщики»
  •  Выберите порядок сортировки по полю Код типа
  •  Выберите ступенчатый макет и альбомную ориентацию страницы
  •  Назовите отчет «Товары по поставщикам».
  •  Просмотрите отчет.
  •  Откройте отчет в режиме конструктора и улучшите расположение заголовков столбцов с данными.

2.Создание суммарного отчета по сгруппированным данным с помощью мастера отчетов.

Выведите суммарные  данные продаж по каждому виду товара.

  •  Воспользуйтесь для получения отчета мастером отчетов.
  •  Используйте в качестве базового  готовый запрос «Продажи по типам » в базе данных Борей.
  •  Выберите в отчет все поля Категория, Марка и Продажи товара указанного запроса.
  •  Добавьте уровень группировки по полю Код типа.
  •  Не выбирайте полей сортировки данных, а щелкните мышью по кнопке Итоги в диалоговом окне
  •  Укажите, что по полю Продажи товара необходимо выполнить операцию суммирования , выберите переключатель «данные и  итоги».
  •  Выберите по своему усмотрению макет и стиль отчета
  •  Дайте название отчету “Продажи товаров по категориям”
  •  Просмотрите отчет
  •  В режиме конструктора удалите ненужные заголовки полей, если таковые имеются.

  1.  Добавление в отчет текстового поля и изменение порядка сортировки

Необходимо ввести в созданный только что отчет новое текстовое поле и изменить порядок сортировки данных в группе.

  •  В режиме Конструктора воспользуйтесь элементом Поле на панели элементов для создания текстового поля левее  поля с указанием суммы продаж и введите выражение:

=”сумма продаж”&[Категория]

  •  Раздвиньте текстовое поле и измените начертание шрифта на полужирное.
  •  В диалоге Сортировка и группировка из меню Вид замените  в поле сортировки Марка на сортировку по возрастанию.
  •  Просмотрите отчет и сохраните его.

  1.  Удаление разрывов групп и введение нового вида нумерации страниц.

Распечатайте группы без разрывов и введите новый вид нумерации страниц.

  •  В окне Сортировка и группировка(меню Вид) выделите поле Категория, после чего в окне свойств поместите в графу свойства Не разрывать значение – Полную группу.
  •  В нижнем колонтитуле удалите текстовое поле, которое содержит выражение для номера страницы.
  •  Создайте новое тестовое поле, где номер страницы ставится по середине листа  после слова страница. Для этого надо всего  лишь выполнить команду Вставка/ Номера страниц.
  •  Просмотрите отче.
  •  Сохраните и закройте отчет.

5. Создание отчета в режиме конструктора

Повторите создание отчета “Товары по поставщикам” (см.п.1) в режиме конструктора.

  •  На вкладке Отчеты выберите команду Создать, затем режим Конструктор
  •  В качестве источника данных укажите запрос Товары по поставщикам
  •  В открывшемся окне конструктора отчетов найдите все области отчета и окно с  полями для отчета
  •  Если не отображается область заголовка отчета, выполните команду  Заголовок/Примечание отчета из меню Конструктор
  •  Создайте Заголовок отчета с помощью элемента Надпись
  •  Перетащите имена поля в область данных отчета с помощью мыши. При перетаскивании будет появляться два “прямоугольника” для каждого поля. Один является заголовком(именем поля) и его надо будет перетянуть в область верхнего колонтитула, а другой – значением и он остается в области данных. Если имя поля не удаётся перетянуть в область верхнего колонтитула, удалите его из области данных клавишей Delete и в области верхнего колонтитула с помощью объекта Надпись создайте заголовок для данных поля вручную.
  •  Используя кнопку сортировка и группировка, создайте группировку по полю Поставщики
  •  Сохраните отчет
  •  Выполните просмотр отчета (можно с помощью кнопки Вид)

Контрольные вопросы

1.Как используется Мастер по созданию отчетов?

2. Как выполнить просмотр перед печатью?

3. Как создать суммарный  отчет по сгруппированным данным?

4.Как использовать в отчете выражения?

5.Как изменить в отчете порядок сортировки?

6.Как проставить нумерацию страниц отчета?

7.Назовите области отчета.

8.Как создается отчет в режиме конструктора?

Лабораторная работа №9

Проектирование и создание базы данных в СУБД ACCESS из указанных атрибутов (полей).

Цель работы: приобретение навыков проектирования БД, закрепление навыков разработки БД в ACCESS

Теоретические положения

Прежде чем приступить в Microsoft Access к фактической разработке таблиц, запросов, форм и других объектов, рекомендуется предварительно спланировать структуру на бумагу. Полезно также ознакомиться с уже разработанными базами данных, аналогичными требуемой, или открыть учебную базу данных «Борей» и изучить ее макет в окне «Схема данных».

Разработка базы данных разбивается на следующие основные этапы.

Определение цели создания базы данных

На первом этапе разработки базы данных необходимо определить ее назначение и как она будет использоваться.

  •  Посоветуйтесь с будущими пользователями базы данных. Вместе с ними сформулируйте вопросы, ответы на которые вы и они хотите получать с помощью базы данных.
  •  Создайте эскизы отчетов, которые хотелось бы получить.
  •  Соберите формы, которые вы уже используете для ввода данных.

По мере определения предназначения базы данных начнет формироваться перечень необходимых данных. Зная это, можно определить, какие фактические данные следует сохранять в базе данных и по каким темам распределяются эти данные. Темам должны соответствовать таблицы, а данным — поля (столбцы) в этих таблицах.

Определение нужных полей в базе данных

Каждое поле содержит определенные фактические данные. Например, может потребоваться следующая информация о заказчиках: название компании, адрес, город, страна и номер телефона. Для каждого типа сведений следует создать отдельное поле. При составлении схемы полей, учитывайте следующее.

  •  Включайте все необходимые сведения.
  •  Разбивайте информацию на минимальные логические компоненты. Например, имена сотрудников удобно разбить на две поля, «Имя» и «Фамилия», что облегчит сортировку по фамилиям.
  •  Не создавайте поля для данных, состоящих из нескольких элементов. Например, если создать в таблице «Поставщики» поле «Товары», содержащее перечень всех товаров этого поставщика, будет трудно найти поставщиков, поставляющих конкретный товар.
  •  Не рекомендуется включать в таблицу данные, которые являются результатом выражения. Например, в таблице, содержащей поля «Цена» и «Количество» не следует создавать поле, содержащее произведение значений этих полей.
  •  Не создавайте поля, содержащие аналогичные данные. Например, если создать в таблице «Поставщики» поля «Товар1», «Товар2» и «Товар3», будет трудно найти поставщиков, поставляющих конкретный товар. Кроме того, придется изменять структуру базы данных, если появится поставщик, предлагающий четыре товара. Достаточно будет одного поля для товаров, если поместить это поле в таблицу «Товары», а не в таблицу «Поставщики».

Определение таблиц, которые должна содержать база данных

Каждая таблица должна содержать информацию только на одну тему. Список нужных полей подскажет, какие требуются таблицы. Например, если будет использоваться поле «ДатаНайма», оно принадлежит теме сведений о сотрудниках, т.е. должно содержаться в таблице «Сотрудники». Потребуются также таблицы «Клиенты», «Товары» и «Заказы».

Определение таблиц, к которым относятся поля

При решении вопроса, к какой таблице должно относиться каждое поле, необходимо учитывать следующие принципы разработки.

  •  Включайте каждое поле только в одну таблицу.
  •  Не включайте поле в таблицу, если в результате его добавления одни и те же данные будут появляться в нескольких записях этой таблицы. Если оказывается, что поле таблицы содержит много повторяющихся данных, это поле, вероятно, помещено не в ту таблицу.

Например, при включении поля, содержащего адрес заказчика в таблицу «Заказы» эта информация будет повторяться во многих записях, если заказчик будет делать разные заказы. Если же поместить адрес в таблицу «Клиенты», он появится только один раз. В этом отношении таблицы в реляционной базе данных отличаются от таблиц в однотабличных базах данных, таких как электронные таблицы.

Данные, хранящиеся только в одной таблице, обновляются только один раз. Это более эффективно и, кроме того, исключает возможность дублирования записей, содержащих разные сведения.

Определение полей с уникальными значениями в каждой записи

Для связывания в Microsoft Access сведений, хранящихся в разных таблицах — например, для связывания клиента со всеми его заказами — каждая таблица базы данных должна содержать поля или набор полей, однозначно определяющих каждую запись. Такое поле или набор полей называют первичным ключом.

Определение связей между таблицами

После разбиения сведений на таблицы и определения полей первичного ключа необходимо выбрать способ, которым Microsoft Access будет вновь объединять связанные сведения. Для этого следует определить связи между таблицами базы данных Microsoft Access.

Может оказаться полезным изучить связи в существующей базе данных с хорошо организованной структурой, например, в учебной базе данных «Борей».

Усовершенствование структуры базы данных

После создания нужных таблиц, полей и связей необходимо еще раз просмотреть структуру базы данных и выявить возможные недочеты. Желательно это сделать на данном этапе, пока таблицы не заполнены данными.

Создайте таблицы в Microsoft Access, создайте между ними связи, и введите в таблицы достаточный объем данных для проверки структуры. Чтобы проверить связи в базе данных, посмотрите, удается ли создать запросы для получения нужных сведений. Создайте черновые формы и отчеты посмотрите, отображаются ли в них те данные, что ожидались. Выполните поиск излишних повторов данных и исключите их.

Ввод данных и создание других объектов базы данных

Если структуры таблиц отвечают поставленным требованиям, то можно ввести все данные. Затем можно создать все необходимые объекты базы данных запросы, формы, отчеты, страницы доступа к данным, макросы и модули.

Использование средств анализа Microsoft Access

В Microsoft Access существуют два инструмента, помогающие усовершенствовать структуру базы данных Microsoft Access.

  •  Мастер анализа таблиц позволяет проанализировать структуру таблицы, предложить подходящие новые структуры и связи, а также разделить таблицу на новые связанные таблицы, если это имеет смысл.
  •  Анализатор быстродействия исследует всю базу данных и дает рекомендации по ее улучшению. Мастер может также выполнить эти рекомендации.

Выполнение работы

Работа выполняется по индивидуальным вариантам и включает следующие элементы:

  •  Проектирование БД
  •  Создание БД средствами АССЕSS и занесение в нее данных
  •  Организацию запросов к базе
  •  Оформление отчета с помощью Конструктора

Задание: спроектировать БД, содержащую некоторые сведения, представленные в виде группы атрибутов (см.таблицу 1). Восемь первых атрибутов являются обязательными для всех, а остальные варьируются (см. таблицу 2). Приведенные атрибуты характеризуют некоторую группу людей и позволяют с учетом их профессиональной деятельности рассчитать денежное содержание.

Таблица 1. Состав атрибутов

1.ФИО

2. Год рождения

3. Должность

4. Оклад

5. Стаж

6. Надбавка за стаж

(свыше 5, 10, 15,20,25,30,35,40 лет)

7. Удаленность

(средняя, большая, очень большая)

8. Надбавка за удаленность

9.Сложность

(средняя, высокая, очень высокая)

10. Надбавка за сложность

11. Вредность

(по категориям: 1,2 ,3, 4, 5)

12. Надбавка за вредность

13.Классность(мастер,первая,вторая,третья)

14. Надбавка за классность

15. Ученое звание(доцент, снс, профессор)

16. Надбавка за ученое звание

17. Ученая степень(ктн, дтн)

18.Надбавка за степень;

19. Воинское звание

(лейтенант, ст_лейтенант, , капитан, майор, подполковник, полковник)

20. Надбавка за звание.

Задание состоит в следующем.

  1.  Необходимо в соответствии со своим списком атрибутов спроектировать БД.
  2.  Разработать БД в СУБД ACCESS
  3.  Занести в нее данные
  4.  Организовать постоянные связи между таблицами для обеспечения целостности своей БД при: изменении записей, добавлении записей, удалении записей.
  5.  Убедиться, что
    •  данные, внесенные в таблицы, непротиворечивы;
    •  система поддержки целостности БД функционирует. Для этого попытаться изменить, ввести и удалить данные в таблицах с нарушением правил поддержания целостности БД.
  6.  Организовать запросы к БД, которые бы позволяли продемонстрировать:
    •  Фамилию и должность сотрудника;
    •  Сумму денежного содержания сотрудника и значения компонентов, из которых она формируется;
    •  Для каждого поля сформировать заголовок, используя кирилицу;
    •  Сведения в запросе упорядочить в порядке убывания денежного содержания, а при равном денежном содержании – в алфавитном порядке фамилий сотрудников.

  1.  Оформить отчет о денежном содержании сотрудников, используя Конструктор отчетов.

Таблица 2. Распределение атрибутов по вариантам

Вариант

Номер атрибута

9

10

11

12

13

14

15

16

17

18

19

20

1

*

*

*

*

2

*

*

*

*

3

*

*

*

*

4

*

*

*

*

5

*

*

*

*

6

*

*

*

*

7

*

*

*

*

8

*

*

*

*

9

*

*

*

*

10

*

*

*

*

11

*

*

12

*

*

*

*

13

*

*

*

*

14

*

*

*

*

15

*

*

*

*

16

*

*

*

*

*

*

17

*

*

*

*

*

*

18

*

*

*

*

*

*

19

*

*

*

*

*

*

20

*

*

*

*

*

*

21

*

*

*

*

*

*

22

*

*

*

*

*

*

23

*

*

*

*

*

*

24

*

*

*

*

*

*

25

*

*

*

*

*

*

26

*

*

*

*

*

*

27

*

*

*

*

*

*

28

*

*

*

*

*

*

Лабораторная работа №10

Проектирование и создание базы данных в СУБД ACCESS по своей предметной области.

Цель работы: проектирование и разработка собственной БД в ACCESS

Выполнение работы

  •  Повторите теоретические положения о проектировании БД из предыдущей работы №9
  •  Определите предметную область, сведения по которой будут содержаться в базе данных. В случае затруднения обратитесь к образцам баз данных в ACCESS.
  •  Определите поля и спроектируйте базу данных на бумаге, состоящую не менее, чем из 3-ех таблиц.
  •  Укажите типы данных полей и связи между таблицами.
  •  Оформите отчет в тетради, отражающий этапы проектирования базы данных и конечный результат.
  •  Разработайте таблицы базы данных в ACCESS и внесите пробные записи. Усовершенствуйте таблицы, используя мастер подстановок для некоторых полей и используя свойства полей.
  •  Создайте связи между таблицами
  •  Разработайте 2-3 формы для удобного заполнения и просмотра данных БД и заполните БД 10 записями
  •  Разработайте 3 запроса к БД( на выборку, параметрический, суммарный или на изменение данных)
  •  Разработайте 2 отчета по БД. При необходимости создайте запросы, которые являются источниками данных для отчетов.
  •  Продемонстрируйте разработанную базу данных преподавателю, включающую все указанные объекты.
  •  Оформите отчет и защитите работу по контрольным вопросам.

Контрольные вопросы

  1.  Назовите таблицы БД, их ключи и типы связей.
  2.  Какие свойства полей и маски ввода данных были использованы в таблицах БД?
  3.  Какие формы были разработаны и почему?
  4.  Назвать и объяснить запросы к БД?
  5.  Как были созданы  отчеты и для чего они предназначены?

Лабораторная работа №11

Разработка макросов в СУБД ACCESS. Создание стартовой кнопочной формы.

Цель работы: приобретение навыков разработки макросов в СУБД, изучение технологии создания стартовой кнопочной формы БД в режиме конструктора

Теоретические положения

Макрос представляет набор макрокоманд, который создается для автоматизации часто выполняемых задач. Группа макросов позволяет выполнить несколько задач одновременно.

Макросы: общие сведения

Макросом называют набор из одной или более макрокоманд, выполняющих определенные операции, такие как открытие форм или печать отчетов. Макросы могут быть полезны для автоматизации часто выполняемых задач. Например, при нажатии пользователем кнопки можно запустить макрос, который распечатает отчет.

При создании макроса пользователь вводит макрокоманды, которые требуется выполнить, в верхней части окна макросов. В нижней части окна макросов задаются аргументы макрокоманды.

Макрос может быть как собственно макросом, состоящим из последовательности макрокоманд, так и группой макросов. В некоторых случаях для решения, должна ли в запущенном макросе выполняться определенная макрокоманда, может применяться условное выражение.

Создание кнопочной формы

Стартовая кнопочная форма открывается первой при загрузке базы данных и представляет собой удобный интерфейс для доступа к объектам базы данных.(таблицам, Формам, запросам и отчетам).

Для создания, изменения и удаления кнопочных форм служит диспетчер кнопочных форм или их можно создавать в конструкторе форм (если надстройка диспетчера кнопочных форм отсутствует.) Для использования диспетчера кнопочных форм:

  1.  Откройте базу данных.
  2.  В меню Сервис выберите команду Служебные программы, а затем Диспетчер кнопочных форм.
  3.  Если выводится запрос на подтверждение создания кнопочной формы, нажмите кнопку Да.
  4.  Нажмите кнопку Создать.
  5.  Введите имя новой кнопочной формы и нажмите кнопку OK.

Имя новой кнопочной формы добавляется в поле Страницы кнопочной формы.

  1.  Выберите имя новой кнопочной формы и нажмите кнопку Изменить.
  2.  Нажмите кнопку Создать.
  3.  В поле Текст введите текст для первой кнопки кнопочной формы, а затем выберите для нее команду в поле Команда. Например, введите текст Просмотр заказов, а затем выберите в поле Команда команду Открыть форму для изменения.

Примечание.   Для создания кнопочной формы, которая открывает другие кнопочные формы, выберите в поле Команда команду Перейти к кнопочной форме, а затем укажите кнопочную форму, к которой надо перейти.

  1.  Для большинства выбранных команд под полем Команда открывается новое поле со списком. При необходимости, выберите нужный элемент в этом поле. Например, если на шаге 8 была выбрана команда Открыть форму для изменения, выберите в поле Форма имя нужной формы, например Заказы, и нажмите кнопку OK.
  2.  Повторите шаги с 7 по 9 для создания остальных кнопок кнопочной формы.

Примечание.   Чтобы изменить или удалить какую-либо из созданных кнопок, выберите ее имя в списке Элементы данной кнопочной формы и нажмите кнопку Изменить или Удалить. Если требуется изменить порядок элементов кнопочной формы, выберите элемент в списке и воспользуйтесь кнопками Вверх или Вниз.

  1.  Закончив создание кнопочной формы, нажмите кнопку Закрыть.

Создание меню пользователя

Меню пользователя открывается при загрузке базы данных одновременно с меню и панелями инструментов Access и представляет собой удобный интерфейс для доступа к объектам базы данных.(таблицам, Формам, запросам и отчетам).

Для создания, изменения и удаления элементов меню пользователя используется команда Сервис – Настройка – Команды.

Создание пункта меню: выполните команду Сервис – Настройка – Команды. В списке «Категории» выберите «Новое меню». Выделите «Новое меню» в списке «Команды» и, удерживая нажатой левую кнопку мыши, отбуксируйте в нужное место панели инструментов.

Создание списка меню: выполните команду Сервис – Настройка – Команды. В списке «Категории» выберите «Файл». Выделите «Специальная» в списке «Команды» и, удерживая нажатой левую кнопку мыши, отбуксируйте под нужный пункт созданного меню.

Команде пункта меню или списка меню должен быть назначен макрос. Это можно выполнить, выбрав «Свойства» из контекстного меню.

Сжатие базы данных

Чтобы поддерживать базу данных в надлежащем порядке, необходимо периодически выполнять некоторые служебные процедуры. Вероятно, наиболее важной из них является резервное копирование данных, которое выполняется с помощью стандартных средств Windows для работы с файлами. Не менее существенной процедурой является сжатие базы данных. По мере обработки таблиц и добавления объектов 'файл базы данных увеличивается в объеме. При стирании части информации не происходит полного ее удаления из файла. В результате объем, занимаемый базой данных на жестком диске, может оказаться неоправданно большим.

 Чтобы сжать базу данных, выполните команду Сервис > Служебные программы > Сжать и восстановить базу данных

 Сравните размер файла базы данных до и после сжатия. Вы увидите, насколько эффективно сжатие экономит дисковое пространство.

Та же самая команда выполняет восстановление базы данных, поврежденной в результате внезапного сбоя электропитания. Иногда в процессе работы вы заметите, что база данных ведет себя как-то странно. В такой ситуации, не дожидаясь предупреждения, выполните команду Сжать и восстановить базу данных. Access по возможности восстановит нарушения, обнаруженные в структуре данных.

Параметры запуска

Параметры запуска позволяют управлять внешним видом и функциональными характеристиками файла Microsoft Access при его открытии. Параметры запуска применяются только к текущему файлу Access. Свойства, соответствующие параметрам запуска, не подавляют настройки свойств конкретной панели инструментов, строки меню, контекстного меню, формы или отчета. Например, параметры Строка меню и Контекстное меню в диалоговом окне Параметры запуска не переопределяют значения свойств для конкретных форм или отчетов, имеющих пользовательскую строку меню или контекстное меню. Таким образом, при открытии формы или отчета Microsoft Access отображает пользовательскую строку меню, присоединенную к этой форме или отчету, а не глобальную строку меню, указанную в диалоговом окне Параметры запуска. Пользователь также имеет возможность создать макрос AutoExec для выполнения макрокоманд при открытии файла Access. Диалоговое окно Параметры запуска можно использовать вместо или в дополнение к макросу AutoExec. Макрос AutoExec выполняется после вступления в силу параметров запуска, поэтому в макрос AutoExec не следует включать макрокоманды, которые могут изменить параметры запуска. Например, если в поле Вывод формы/страницы диалогового окна Параметры запуска указана форма, а в макросе AutoExec вызывается макрокоманда ОткрытьФорму, то сначала будет открыта форма, указанная в диалоговом окне Параметры запуска, а сразу за ней форма, указанная в макрокоманде ОткрытьФорму.

Внимание! Макросы могут содержать вирусы, поэтому их следует выполнять с соблюдением следующих мер предосторожности: используйте на компьютере последнюю версию антивирусного программного обеспечения; установите высокий уровень безопасности макросов; используйте цифровые подписи; создайте список доверенных источников макросов.

Существует два способа задать действия, выполняемые приложением при запуске, и ряд параметров, влияющих на работу приложения: установка параметров запуска в специальном диалоговом окне и создание макроса "AutoExec".

Для установки параметров запуска выберите команду Сервис, Параметры запуска. На экране появляется диалоговое окно Параметры запуска.

В диалоговом окне Параметры запуска (Startup) можно задать:

  •  значок и заголовок вашего приложения, которые будут отображаться в главном окне приложения и на панели задач вместо стандартного значка и заголовка "Microsoft Access". Значок должен быть задан в файле с расширением ico, а выбрать данный файл можно с помощью кнопки Построителя. Этот же значок может быть использован во всех формах и отчетах, для чего необходимо установить флажок Значок форм и отчетов. Эти параметры вступают в силу сразу после закрытия диалогового окна Параметры запуска .
  •  меню, которое будет появляться при запуске вместо стандартного меню Access и определять основные функции приложения;
  •  форму или страницу, которая будет появляться на экране при открытии базы данных;
  •  специальное контекстное меню, которое будет заменять встроенные контекстные меню во всех окнах приложения, кроме тех, с которыми связаны другие контекстные меню.

Флажки Окно базы данных  и Строка состояния позволяют скрывать при запуске окно базы данных и строку состояния.

Следующая группа флажков позволяет запретить пользователям вносить изменения в разработанное приложение. Пока вы разрабатываете приложение, все эти флажки установлены, но когда вы будете передавать его пользователям, целесообразно сбросить флажки Полный набор меню Access, Встроенные панели инструментов и Изменение панелей инструментов/меню. Вместо стандартных меню и панелей инструментов можно предоставить пользователям свои собственные меню и панели инструментов или использовать встроенные сокращенные меню, не допускающие пользователя к конструкторам. Чтобы пользователь не мог получить доступ к полным меню через специальную комбинацию клавиш <Ctrl>+<F11> или к окну базы данных с помощью клавиши <F11>, нужно еще сбросить флажок Специальные клавиши Access. Если этот флажок сброшен, пользователь не сможет также открыть окно с текстом программ с помощью комбинаций клавиш <Ctrl>+<G> или <Ctrl>+<Break>. Но при этом он может все-таки попасть в текст программы, если произойдет ошибка, которая не перехвачена в коде программы.

Все эти параметры вступают в силу только после следующего запуска приложения.

Замечание

Все параметры запуска, задаваемые в диалоговом окне Параметры запуска, могут быть установлены также с помощью программы VBA, т. к. все они являются свойствами объекта Database.

Выполнение работы

Задание1

  1.  Создайте макросы для открытия всех таблиц вашей базы данных

Создание макроса

  1.  В окне базы данных выберите Макросы в списке Объекты.
  2.  На панели инструментов окна базы данных нажмите кнопку Создать.
  3.  Добавьте в макрос макрокоманду для открытия таблицы, указав имя таблицы в списке аргументов макрокоманды.

  1.  Создайте стартовую кнопочную форму с рисунком, позволяющую открывать все объекты вашей базы данных и осуществлять выход из ACCESS.

Задание 2 

  1.  Используя созданные в предыдущем задании макросы, разработать меню пользователя для вашей базы данных, открывающее все объекты вашей базы данных и осуществляющее выход из ACCESS
  2.  Задайте каждому элементу списка меню  соответствующие значки и подписи.
  3.  Проверьте работоспособность вашего меню пользователя.

Задание 2

Выполните сжатие вашей базы данных.

   Задание3

Сделать так,чтобы при запуске отображалась ваша кнопочная форма или строка меню.

Для этого необходимо:

1.В своей базе данных в меню “Сервис” выбрать “Параметры запуска”.

2.В открывшемся окне в строке “Вывод формы/страницы” выбрать свою кнопочную форму.

3.Отредактировать поле “Строка меню” по своему усмотрению.

4.Закрыть базу данных.

5.Открыть базу данных и проверить работу установленных параметров.

Примечания 

  •  Чтобы кнопочная форма открывалась при открытии базы данных, выберите имя кнопочной формы в диалоговом окне Диспетчер кнопочных форм и нажмите кнопку По умолчанию.

Лабораторная работа №12

Защита базы данных

Цель работы

Теоретические положения

Защита на уровне пользователей

Защита на уровне пользователей (Защита на уровне пользователей. При активизации защиты на уровне пользователей в базе данных Microsoft Access администратор базы данных или владелец объекта предоставляет определенные разрешения отдельным пользователям и группам пользователей на следующие объекты: таблицы, запросы, формы, отчеты и макросы.) Microsoft Access напоминает механизмы безопасности, используемые на серверах и больших компьютерах. С помощью паролей и разрешений (Разрешения. Набор атрибутов, определяющих права пользователя на данные или объекты в базе данных.) предоставляется или ограничивается доступ пользователей или групп к объектам базы данных. Учетные записи системы безопасности определяют пользователей и группы, которым разрешен доступ к объектам. Эта информация, которую называют сведениями о рабочей группе (Рабочая группа. Группа пользователей сети, которые работают с данными в режиме общего доступа и имеют общий файл рабочей группы.), сохраняется в файле рабочей группы (Файл рабочей группы. Файл, который Microsoft Access считывает при запуске, содержащий сведения о пользователях, входящих в рабочую группу. Эти сведения включают имена учетных записей пользователей, их пароли и имена групп, в которые входят пользователи.).

Общие сведения о защите на уровне пользователей

Наиболее гибкий и распространенный способ защиты базы данных называют защитой на уровне пользователей. Двумя основными причинами использования защиты на уровне пользователей являются:

  •  защита приложения от повреждения из-за неумышленного изменения пользователями таблиц, запросов, форм, отчетов и макросов, от которых зависит работа приложения;
  •  защита конфиденциальных сведений в базе данных.

При использовании этого типа защиты пользователь должен ввести пароль при запуске Microsoft Access. Затем Access читает файл рабочей группы, в котором каждый пользователь идентифицируется уникальным кодом. В файле рабочей группы пользователи по их личным кодам и паролям идентифицируются как авторизованные индивидуальные пользователи и как члены конкретных групп. В Microsoft Access определены две стандартные группы: администраторы (группа «Admins» (Группа «Admins». Учетная запись группы системных администраторов, имеющих полные разрешения на все базы данных, используемые рабочей группой. Программа установки автоматически добавляет в группу «Admins» стандартную учетную запись пользователя «Admin».)) и пользователи (группа «Users» (Группа «Users». Учетная запись группы, в которую включаются все учетные записи пользователей. Microsoft Access автоматически добавляет создаваемые учетные записи пользователей в группу «Users».)), но допускается определение дополнительных групп.

Хотя установка защиты на уровне пользователей для большинства баз данных является сложной задачей, мастер защиты позволит быстро и легко защитить базу данных Access (База данных Microsoft Access. Совокупность данных и объектов, относящихся к определенной задаче. Управление данными выполняется ядром базы данных Microsoft Jet.). Более того, благодаря использованию общих схем защиты, мастер позволяет уменьшить или даже вообще исключить необходимость использования команды Защита в меню Сервис.

Мастер защиты помогает назначить разрешения и создать учетные записи пользователей (Учетная запись пользователя. Учетная запись пользователя, определяемая именем и личным кодом (PID), которая создается для управления разрешениями пользователя на доступ к объектам базы данных в рабочей группе Microsoft Access.) и учетные записи групп (Учетная запись группы. Совокупность учетных записей пользователей, входящих в рабочую группу, имеющая собственные групповое имя и личный код (PID). Разрешения, назначенные группе, автоматически получает каждый пользователь, входящий в группу.). Однако после запуска мастера для базы данных и существующих в ней таблиц, запросов, форм, отчетов и макросов имеется возможность вручную назначить или удалить разрешения на доступ для учетных записей пользователей и групп в рабочей группе. Также могут быть установлены разрешения на доступ, по умолчанию присваиваемые вновь создаваемым объектам базы данных.

Группам и пользователям предоставляются разрешения, определяющие возможность их доступа к каждому объекту базы данных. Например, члены группы «Users» могут иметь разрешения на просмотр, ввод или изменение данных в таблице «Клиенты», но им не будет разрешено изменять структуру этой таблицы. Члены группы «Users» могут быть допущены только к просмотру данных в таблице, содержащей сведения о заказах, и не иметь доступа к таблице «Платежная ведомость». Члены группы «Admins» имеют разрешения на доступ ко всем объектам базы данных. Имеется возможность установить более разветвленную структуру управления, создавая собственные учетные записи групп, предоставляя этим группам соответствующие разрешения и добавляя пользователей в группы.

Если для системы защиты достаточно группы администраторов и группы пользователей, то нет необходимости создавать другие группы. Можно воспользоваться стандартными группами «Admins» и «Users». В этом случае необходимо присвоить соответствующие разрешения на доступ стандартной группе «Users» и добавить дополнительных администраторов в стандартную группу «Admins». Каждый новый пользователь автоматически добавляется в группу «Users». Типовые разрешения на доступ для группы «Users» могут включать «Чтение данных» и «Обновление данных» для таблиц и запросов и «Открытие/запуск» для форм и отчетов

В случае необходимости более разветвленной структуры управления для различных групп пользователей, имеется возможность создания новых групп, присвоения группам различных наборов разрешений на доступ и добавления новых пользователей в соответствующие группы. Для упрощения управления разрешениями на доступ рекомендуется присваивать разрешения только группам (а не отдельным пользователям), а затем добавлять пользователей в соответствующие группы.

Например, можно организовать защиту базы данных «Заказы» с помощью создания учетных записей «Управляющие» для руководства фирмы, «Представители» для торговых представителей и «Персонал» для административного персонала. После этого следует присвоить наибольшее количество разрешений группе «Управляющие», промежуточное количество группе «Представители» и минимальное группе «Персонал». При создании учетной записи для нового сотрудника эта запись будет добавляться в одну из групп и сотрудник автоматически получит разрешения, принадлежащие этой группе.

Рабочие группы и файлы рабочих групп

Рабочая группа Microsoft Access — это группа пользователей, которые совместно используют данные в многопользовательской среде. Если определена защита на уровне пользователей, члены рабочей группы регистрируются с помощью учетных записей пользователей (Учетная запись пользователя. Учетная запись пользователя, определяемая именем и личным кодом (PID), которая создается для управления разрешениями пользователя на доступ к объектам базы данных в рабочей группе Microsoft Access.) и учетных записей групп (Учетная запись группы. Совокупность учетных записей пользователей, входящих в рабочую группу, имеющая собственные групповое имя и личный код (PID). Разрешения, назначенные группе, автоматически получает каждый пользователь, входящий в группу.), которые сохраняются в файле рабочей группы Microsoft Access. Пароли пользователей также запоминаются в файле рабочей группы. Этим учетным записям системы защиты могут быть предоставлены разрешения на доступ к базе данных и ее таблицам, запросам, формам, отчетам и макросам. Сами разрешения сохраняются в защищенной базе данных.

Когда пользователь в первый раз запускает Microsoft Access после установки Microsoft Office, Access автоматически создает файл рабочей группы Microsoft Access, который идентифицируется по указанными пользователем имени и названию организации. Относительное расположение файла рабочей группы записывается в следующие параметры реестра:

HKEY_CURRENT_USER\Software\Microsoft\Office\10.0\Access\Jet\4.0\Engines\SystemDB

и

HKEY_USERS\.DEFAULT\Software\Microsoft\Office\10.0\Access\Jet\4.0\Engines\SystemDB

Следующие пользователи наследуют стандартный путь к файлу рабочей группы из раздела реестра HKEY_USERS. Так как получение этой информации часто не представляет особого труда, существует вероятность того, что кто-то сможет создать другую версию этого файла и приобрести неотъемлемые разрешения на доступ (Разрешения. Набор атрибутов, определяющих права пользователя на данные или объекты в базе данных.) учетной записи администратора (члена группы Admins (Группа «Admins». Учетная запись группы системных администраторов, имеющих полные разрешения на все базы данных, используемые рабочей группой. Программа установки автоматически добавляет в группу «Admins» стандартную учетную запись пользователя «Admin».)) в рабочей группе, определяемой этим файлом рабочей группы. Чтобы избежать этого, создайте новый файл рабочей группы и укажите код рабочей группы (WID) (Код рабочей группы. Набор от 4 до 20 алфавитно-цифровых символов (с учетом регистра), который вводится при создании нового файла рабочей группы с помощью администратора рабочих групп. Этот код однозначно определяет группу «Admins» в файле рабочей группы.). Только тот, кто знает этот код, сможет создать копию файла рабочей группы.

Любые создаваемые учетные записи пользователей и групп и пароли сохраняются в этом файле рабочей группы до тех пор, пока пользователь не присоединится к другой рабочей группе с помощью администратора рабочих групп.

Примечание.   В Access 2002 программу «Администратор рабочих групп» можно запустить из подменю Защита меню Сервис.

Обязательно запишите введенное имя, название организации и код рабочей группы с учетом регистра (для всех трех элементов) и храните их в надежном месте. Если потребуется заново создать файл рабочей группы, необходимо будет ввести точно эти же сведения. Если они забыты или потеряны, восстановить их и получить доступ к базам данных будет невозможно.

Разрешения на доступ: как они работают и кто может их назначать

Существуют два типа разрешений на доступ (Разрешения. Набор атрибутов, определяющих права пользователя на данные или объекты в базе данных.): явные и неявные. Разрешения называются явными, если они непосредственно присвоены учетной записи пользователя (Учетная запись пользователя. Учетная запись пользователя, определяемая именем и личным кодом (PID), которая создается для управления разрешениями пользователя на доступ к объектам базы данных в рабочей группе Microsoft Access.); такие разрешения не влияют на разрешения других пользователей. Неявными называются разрешения на доступ, присвоенные учетной записи группы (Учетная запись группы. Совокупность учетных записей пользователей, входящих в рабочую группу, имеющая собственные групповое имя и личный код (PID). Разрешения, назначенные группе, автоматически получает каждый пользователь, входящий в группу.). Пользователь, включенный в такую группу, получает все разрешения, предоставленные группе; удаление пользователя из этой группы лишает его всех разрешений, присвоенных данной группе.

При попытке пользователя выполнить какую-либо операцию с защищенным объектом базы данных его текущие разрешения определяются комбинацией явных и неявных разрешений на доступ. На уровне пользователей всегда действуют минимальные ограничения из налагаемых явными разрешениями для пользователя и для всех групп, к которым принадлежит данный пользователь. Поэтому простейшим способом управления рабочей группой является создание новых групп и определение разрешений на доступ для этих групп, а не для индивидуальных пользователей. После этого изменение разрешений для отдельных пользователей осуществляется путем добавления пользователей в группы или удаления их из групп. Кроме того, при необходимости предоставить новые разрешения, они предоставляются сразу всем членам группы в одной операции.

Изменять разрешения других пользователей на отдельные объекты базы данных могут следующие пользователи:

  •  члены группы «Admins» (Группа «Admins». Учетная запись группы системных администраторов, имеющих полные разрешения на все базы данных, используемые рабочей группой. Программа установки автоматически добавляет в группу «Admins» стандартную учетную запись пользователя «Admin».), определенной в файле рабочей группы, который использовался при создании конкретной базы данных;
  •  владелец (Владелец. При активизированной системе защиты это учетная запись пользователя, которая осуществляет управление базой данных или ее объектом. По умолчанию разрешения владельца имеет учетная запись пользователя, создавшего базу данных или ее объект.) объекта;
  •  любой пользователь, получивший на этот объект разрешения администратора.

В ряде случаев пользователи, не имеющие разрешения на выполнение какого-либо действия, имеют возможность присвоить их себе. Такая ситуация имеет место для пользователя, являющегося членом группы «Admins» или владельцем объекта.

Пользователь, создавший таблицу, запрос, форму, отчет или макрос, является владельцем этого объекта. Кроме того, группа пользователей, которые могут изменять разрешения в базе данных, может также сменить владельца объектов или заново создать эти объекты, что является альтернативным способом смены владельца объектов. Для создания объекта заново достаточно импортировать или экспортировать этот объект в другую базу данных или сделать копию объекта. Этот прием является простейшим способом смены владельца объектов, в том числе и всей базы данных.

Примечание.   Копирование, импорт или экспорт не приводит к изменению прав владельца для запросов, у которых свойство При запуске предоставляются права (RunPermissions) имеет значение Владельца. Изменение владельца допускается только для запросов, у которых свойство При запуске предоставляются права (RunPermissions) имеет значение Пользователя.

Организация учетных записей

Файл рабочей группы Microsoft Access содержит следующие встроенные учетные записи.

Учетная запись

Функция

Admin

Стандартная учетная запись пользователя (Учетная запись пользователя. Учетная запись пользователя, определяемая именем и личным кодом (PID), которая создается для управления разрешениями пользователя на доступ к объектам базы данных в рабочей группе Microsoft Access.). Данные записи являются одинаковыми для всех экземпляров Microsoft Access и других приложений, использующих ядро базы данных Microsoft Jet (Ядро базы данных Microsoft Jet. Компонент СУБД Microsoft Access, выполняющий загрузку и сохранение данных в базах данных пользователей и в системных базах данных. Ядро Jet может рассматриваться как диспетчер данных, на основе которого строятся СУБД, такие как Microsoft Access.), таких как Microsoft Visual Basic для приложений (VBA) (Visual Basic для приложений (VBA). Макро-версия языка программирования Microsoft Visual Basic, используемая для программирования приложений Microsoft Windows и поставляемая с некоторыми приложениями (Microsoft). ) и Microsoft Excel.

Admins

Учетная запись группы (Учетная запись группы. Совокупность учетных записей пользователей, входящих в рабочую группу, имеющая собственные групповое имя и личный код (PID). Разрешения, назначенные группе, автоматически получает каждый пользователь, входящий в группу.) администраторов. Данная запись является уникальной в каждом файле рабочей группы. По умолчанию пользователь «Admin» является членом группы «Admins» (Группа «Admins». Учетная запись группы системных администраторов, имеющих полные разрешения на все базы данных, используемые рабочей группой. Программа установки автоматически добавляет в группу «Admins» стандартную учетную запись пользователя «Admin».). В каждый момент в группу «Admins» должен входить по крайней мере один пользователь.

Users

Учетная запись группы, содержащая все учетные записи пользователей. Microsoft Access автоматически добавляет учетные записи пользователей в группу «Users» при их создании членом группы «Admins». Данные записи являются одинаковыми в каждом файле рабочей группы, однако этот файл содержит только учетные записи пользователей, созданные членами группы «Admins», входящими в данную рабочую группу. По умолчанию данная учетная запись имеет все разрешения на все новые объекты. Единственным способом удаления учетной записи из группы «Users» является удаление пользователя членом группы «Admins».

В действительности, система защиты Microsoft Access всегда включена. До активизации пользователем процедуры подключения для рабочей группы Microsoft Access при запуске автоматически подключает всех пользователей с помощью встроенной учетной записи пользователя «Admin» (Учетная запись «Admin». Стандартная учетная запись пользователя. При установке Microsoft Access учетная запись пользователя «Admin» автоматически включается в создаваемый файл рабочей группы.) с пустым паролем. Неявно Microsoft Access использует учетную запись «Admin» как учетную запись администратора рабочей группы, а также как владельца (Владелец. При активизированной системе защиты это учетная запись пользователя, которая осуществляет управление базой данных или ее объектом. По умолчанию разрешения владельца имеет учетная запись пользователя, создавшего базу данных или ее объект.) всех создаваемых баз данных и таблиц, форм, отчетов и макросов.

Наличие администраторов и владельцев является необходимым, поскольку им предоставляются разрешения, которые невозможно отобрать.

  •  Администраторы (члены группы «Admins») всегда могут получить все разрешения на объекты, созданные в рабочей группе.
  •  Учетные записи, являющиеся владельцами таблиц, запросов, форм, отчетов или макросов всегда могут получить все разрешения на доступ к этим объектам.
  •  Учетная запись, являющаяся владельцем базы данных, всегда может открыть базу данных.

Поскольку учетные записи пользователя «Admin» совершенно одинаковы для всех экземпляров Microsoft Access, то первым шагом при организации системы защиты является определение учетных записей администратора и владельца (или единой учетной записи, являющейся записью и администратора, и владельца). После этого следует удалить учетную запись пользователя «Admin» из группы «Admins». Если этого не сделать, любой пользователь Microsoft Access сможет подключиться к рабочей группе с помощью учетной записи «Admin» и получить все разрешения на доступ к таблицам, запросам, формам, отчетам и макросам рабочей группы.

В группу «Admins» разрешается добавлять произвольное число учетных записей, однако владельцем базы данных может быть только одна учетная запись — та, что была активной при создании базы данных, либо та, что была активной при передаче права владельца путем создания новой базы данных и импорта в нее всех объектов из исходной базы данных. Однако учетные записи групп могут являться владельцами таблиц, запросов, форм, отчетов и макросов базы данных.

Соображения при организации учетных записей

  •  Для входа в Microsoft Access могут быть использованы только учетные записи пользователя; вход с помощью учетной записи группы невозможен.
  •  Учетные записи, создаваемые для пользователей базы данных, должны сохраняться в файле той рабочей группы, к которой пользователи будут присоединяться для работы с базой данных. Если для создания базы данных используется другой файл рабочей группы, перед созданием учетных записей его необходимо сменить.
  •  Необходимо создать уникальные пароли для учетных записей администратора и пользователей. Пользователь, подключившийся с помощью учетной записи администратора, всегда сможет получить все разрешения на доступ ко всем таблицам, запросам, формам, отчетам и макросам, созданным в рабочей группе. Пользователь, подключившийся с помощью учетной записи владельца, всегда сможет получить все разрешения на доступ к объектам, принадлежащим данному владельцу.

После создания учетных записей пользователей и групп можно просматривать и печатать их схемы. Microsoft Access печатает отчет по учетным записям в рабочей группе, демонстрирующий группы, к которым принадлежит каждый пользователь, и всех пользователей, входящих в каждую группу.

Защита паролем

Частичную защиту базы данных обеспечивает добавление пароля, ограничивающего пользователей, которые могут открывать базу данных. Microsoft Access хранит пароль базы данных в незашифрованном виде. Если это нарушает безопасность защищаемой паролем базы данных, не следует использовать пароль. Вместо этого необходимо определить защиту на уровне пользователей.

Внимание! 

  •  Если вы потеряли или забыли пароль, восстановить его будет невозможно, и вы не сможете открыть базу данных.
  •  Не используйте пароль базы данных, если предполагается выполнять репликацию базы данных. Реплицированные базы данных не могут быть синхронизированы, если определен пароль базы данных.
  •  Нельзя установить пароль базы данных, если для базы данных была определена защита на уровне пользователей, а у вас нет разрешений администратора для базы данных. Кроме того, пароль базы данных определяется дополнительно к защите на уровне пользователей. Если была определена защита на уровне пользователей, то любые ограничения, основанные на разрешениях на доступ на уровне пользователей, остаются в силе.
  1.  Закройте базу данных. Если база данных открыта для общего доступа в сети, убедитесь, что все остальные пользователи закрыли ее.
  2.  Сделайте резервную копию базы данных и сохраните ее в надежном месте.
  3.  В меню Файл выберите команду Открыть.
  4.  Щелкните стрелку справа от поля Папка, выберите диск и папку, в которой расположен файл базы данных Microsoft Access, и щелкните значок этого файла.
  5.  Щелкните стрелку справа от кнопки Открыть, выберите вариант Монопольно и откройте базу данных.
  6.  В меню Сервис выберите команду Защита и подкоманду Задать пароль базы данных.
  7.  Введите пароль в поле Password.

Соглашения о паролях

Имена учетных записей могут иметь длину от 1 до 20 знаков и могут состоять из букв, цифр, пробелов и символов из расширенных наборов, за исключением следующих:

  •  знаки " \ [ ] : | < > + = ; , . ? *
    •  пробелы в начале имени;
    •  управляющие знаки (с кодами ASCII от 10 до 31).

Примечание.   В паролях учитывается регистр знаков.

  1.  Для подтверждения пароля введите его еще раз в поле Подтверждение, а затем нажмите кнопку OK.

Теперь пароль задан. При следующем открытии базы данных появляется диалоговое окно, в которое необходимо ввести пароль.

Примечания 

  •  Пароль базы данных сохраняется в базе данных, а не в файле рабочей группы.
  •  Если таблица из защищенной паролем базы данных является связанной, то при установлении связи пароль сохраняется (помещается во временный буфер) в базе данных, с которой связывается таблица. Это позволит любому пользователю видеть ваши данные.

Выполнение работы

  1.  Изучите по методическим указаниям и меню Сервис/Защита в СУБД АССESS способы защиты базы данных.
  2.  Выполните защиту базы данных паролем. Проверьте эффективность, открыв базу данных повторно.

Контрольные вопросы

  1.  Какие способы защиты базы данных вы знаете?
    1.  Какой способ защиты самый эффективный? Изложите его основные положения.

Лабораторная работа №13

Изучение объектов DAO на примере разработки приложения.

Цель работы: приобретение навыков разработки приложений с использованием объектов DAO

Теоретические положения

Объекты доступа к данным DAO (Data Access Objects) позволяют управлять структурой базы данных и содержащимися в ней данными из программ Visual Basic. Многие объекты DAO соответствуют объектам, которые можно видеть в базе данных — например, объект TableDef соответствует таблице Microsoft Access. Объект Field соответствует полю в таблице.

Большая часть свойств объектов DAO является свойствами DAO. Эти свойства определены в ядре базы данных Microsoft Jet и задаются тем же способом, как и в других приложениях, включающих ядро Jet. Некоторые свойства, которые можно задать для объектов DAO, определяются в Microsoft Access, а затем автоматически распознаются ядром базы данных Jet. Способ задания свойств объектов DAO зависит от того, где определено свойство, в ядре базы данных Jet или в Microsoft Access.

Объекты DAO представлены в следующей таблице

Коллекция

Объект

Connections

Connection 

Containers

Container

Databases

Database

None

DBEngine

Documents

Document

Errors

Error

Fields

Field

Groups

Group

Indexes

Index

Parameters

Parameter

Properties

Property

QueryDefs

QueryDef

Recordsets

Recordset

Relations

Relation

TableDefs

TableDef

Users

User

Workspaces

Workspace

Порядок работы при объектном доступе к данным

  1.  Создать рабочую область (объект Workspace)
    1.  Открыть базу данных (объект Database)
    2.  Создать набор записей (объект Recordset)
    3.  Выполнить непосредственную работу с конкретными записями и полями

Выполнение работы

  1.  Создать базу данных в Microsoft Access с информацией о студентах, состоящую из одной таблицы ПервыйКурс. База данных находится в файле студенты.mdb. Таблица содержит четыре поля: Фамилия, Группа, Предмет и Оценка. Способ создания таблицы выбрать самостоятельно.
  2.  Разработать приложение в Microsoft Excel в редакторе VBA, использующее данные из базы данных студенты. Приложение состоит из формы, изображенной на рисунке и программного кода, приведенных ниже. В приложении будут использованы объекты DAO. Поэтому нужно будет подключить ссылку на библиотеку DAO 3.5 (DAO 3.6). Для этого в редакторе VBA необходимо выбрать команду Сервис, Ссылки (Tools, References) и в появившемся диалоговом окне Ссылки (References) установить флажок напротив элемента Microsoft DAO 3.5 Object Labrary.

Option Explicit

'

'

Dim РабочаяОбласть As Workspace

Dim БазаДанных As Database

Dim Запись As Recordset

Dim ЗаписьДубль As Recordset

Dim Фамилия As String

Dim Критерий As String

Dim Закладка As Variant

Private Sub CommandButton1_Click()

'

'Найти запись по фамилии

'

'Запоминается на закладке текущая запись

'

Закладка = Запись.bookmark

'

'Считывается фамилия из поля фамилия, на её основе

'создаётся критерий поиска и ищется первая запись с

'подобной фамилией

'

Фамилия = Trim(TextBox1.Text)

Критерий = "(Фамилия)='" & Фамилия & "'"

Запись.FindFirst Критерий

'Если запись с указанной фамилией найдена ,то она

'отображается в диологовом окне.

'Если запись не найдена, то отображается сообщение и

'при помощи закладки происходит возврат записи, с

'которой был начат поиск.

'

If Запись.NoMatch = False Then

ПоказатьЗапись

Else

MsgBox "Запись не найдена", vbInformation, "Студенты"

Запись.bookmark = Закладка

ПоказатьЗапись

End If

End Sub

Private Sub CommandButton10_Click()

'

'Переход к последней записи

'

Запись.MoveLast

ПоказатьЗапись

End Sub

'

Private Sub CommandButton2_Click()

'

'Найти следующую запись по фамилии

'

Закладка = Запись.bookmark

Фамилия = Trim(TextBox1.Text)

Критерий = "[Фамилия]='" & Фамилия & "'"

Запись.FindNext Критерий

'

If Запись.NoMatch = False Then

ПоказательЗапись

Else

MsgBox "Больше таких записей нет", vbInformation, "Студенты"

Запись.bookmark = Закладка

ПоказатьЗапись

End If

End Sub

'

Private Sub CommandButton3_Click()

'

'Удаление записи

'

With Запись

   .Delete

   .MoveNext

End With

ПоказатьЗапись

End Sub

'

Private Sub CommandButton4_Click()

'

'Добавление записи

'

With Запись

   .AddNew

   .Fields("Фамилия").Value = TextBox1.Text

   .Fields("Группа").Value = TextBox2.Text

   .Fields("Предмет").Value = TextBox3.Text

   .Fields("Оценка").Value = TextBox4.Text

   .Update

End With

'

Exit Sub

'

End Sub

Private Sub CommandButton5_Click()

'

'Редактирование записи

'

With Запись

   .Edit

   .Fields("Фамилия").Value = TextBox1.Text

   .Fields("Группа").Value = TextBox2.Text

   .Fields("Предмет").Value = TextBox3.Text

   .Fields("Оценка").Value = TextBox4.Text

   .Update

End With

End Sub

'

Private Sub CommandButton6_Click()

'

'Закрытие записи,базы данных и окна

'

Запись.Close

БазаДанных.Close

РабочаяОбласть.Close

UserForm1.Hide

End Sub

'

Private Sub CommandButton7_Click()

'

'Переход к первой записи

'

Запись.MoveFirst

ПоказатьЗапись

End Sub

'

Private Sub CommandButton8_Click()

'

'Переход к предыдущей записи

'

Запись.MovePrevious

'

'Если достигнута первая запись,то отображается сообщение

'

If Запись.BOF = True Then

  Запись.MoveFirst

  MsqBox "Первая запись", vbInformation, "Студенты"

End If

ПоказатьЗапись

End Sub

Private Sub CommandButton9_Click()

'

'Переход к последующей записи

'

Запись.MoveNext

'

'Если достигнута последняя запись,то отображается сообщение

'

If Запись.EOF = True Then

Запись.MoveLast

MsgBox "Последняя запись", vbInformation, "Студенты"

End If

ПоказатьЗапись

End Sub

'

Private Sub OptionButton1_Click()

'

'Отображение данных только о хорошистах и отличниках

'

'Создание копии записи

'

Set ЗаписьДубль = Запись.Clone

'

'фильтрация Записей по критериям

'

Запись.Filter = "[Оценка]>=4"

'

'Создание отфильтрованной записи

'

Set Запись = Запись.OpenRecordset()

If Запись.RecordCount > 0 Then

'

'Если отфильтрованная запись существует, то она отображается в диалоговом окне

'

Показать Запись

Else

'

'Если отфильтрованной записи нет, то отображается соответствующее

'сообщение, востанавливается первоночальный объект Recordset

'и выбирается переключатель Все

MsgBox "Таких студентов нет", vbInformation, "Студенты"

Set Запись = ЗаписьДубль.Clone

Set Запись = Запись.OpenRecordset()

OptionButton2.Value = True

End If

End Sub

'

Private Sub OptionButton2_Click()

'

'Отображение всех студентов

'

Запись = Запись.Clone

Set Запись = ЗаписьДубль.OpenRecordset()

ЗаписьДубль.Close

Показать Запись

End Sub

'

'

Private Sub UserForm_Initilaze()

'

'Создание рабочей области

'

SetРабочая область = CreteWorkspace(Name:="", UserName:="admin", Password:="", UseType:=dbUseJet)

'

'Открытие базы данных студентов.mdb

'

Set БазаДанных = РабочаяОбласть.OpenDatabase(Name:="c:\My_DOC\студенты.mdb", Options:=True)

'

'Cоздание записей

'

Set Запись = БазаДанных.OpenRecordset("ПервыйКурс", dbOpenDynaset)

'

'Принудительное перемещение на последнюю запись для того,

'чтобы определить число записей.

End Sub

Private Sub UserForm_Click()

End Sub

Private Sub UserForm_Initialize()

'

'Создание рабочей области

'

Set РабочаяОбласть = CreateWorkspace(Name:="", UserName:="admin", Password:="", UseType:=dbUseJet)

'

'Открытие базы данных студентов.mdb

'

Set БазаДанных = РабочаяОбласть.OpenDatabase(Name:="c:\Мои документы\студенты.mdb", Options:=True)

'

'Cоздание записей

'

Set Запись = БазаДанных.OpenRecordset("ПервыйКурс", dbOpenDynaset)

'

'Принудительное перемещение на последнюю запись для того,

'чтобы определить число записей.

Запись.MoveLast

Label5.Caption = "Всего записей" & CStr(Запись.RecordCount)

Запись.MoveFirst

ПоказатьЗапись

With UserForm1

.Caption=”Студенты первого курса”

.OptionButton2.Value=True

End With

End Sub

Sub ПоказатьЗапись()

‘ Процедура вывода записи в поля диалогового окна

TextBox1.Text=Запись.Fields(“Фамилия”).Value

TextBox2.Text=Запись.Fields(“Группа”).Value

TextBox3.Text=Запись.Fields(“Предмет”).Value

TextBox4.Text=Запись.Fields(“Оценка”) .Value

End Sub

  1.  Проверить работу приложения, добавляя, удаляя, редактируя записи и просмотреть базу данных студенты в Access после работы с приложением. В случае соответствующих изменений в базе данных можно судить о верной работе приложения и о правильном использовании объектов DAO.
  2.  Найти в программном коде приложения конструкции, соответствующие ключевым пунктам работы с DAO.
  3.  Оформить отчет, содержащий выше названные конструкции согласно порядку работы с объектами DAO.

Контрольные вопросы.

  1.  Назовите известные вам объекты DAO. Для чего они предназначены?
  2.  Назвать конструкции VBA для работы с этими объектами (в отчете)




1. Створити нову форму за допомогою Конструктора на основі таблиць Каталог фітопрепаратів Постачальники
2. Первоэлементы культуры и время их возникновения
3. Понятие нигилизма
4. Киноигре Общее положение- Цель игры- развитие логики построение правильных логических цепочек
5.  Основные этапы формирования речи ребенка
6. Разработка экстремального тура Тюрьмы Санкт-Петербурга
7. Виды факторинговых операций
8. оп-сек В качестве внутренней памяти применялись ферритовые сердечники
9. Реферат- Психология лиц с нарушениями слух
10. Раствор состоит из растворенного вещества и растворителя т
11. Учет товарных запасов
12. The Industrial Revolution
13. Данный роман вымысел
14. Соціальна екологія
15. Эмоциональные проблемы в речевой коммуникации
16. научного сознания
17. Категории и виды стандартов РФ
18. Реферат- Международные браки- Заключение брака с гражданином(кой) Греции (некоторые аспекты)
19. и С 3; 3. шбрыштыњ периметрін аныќтау керек-
20. Религиозный туризм и путешествия в средневековье