1.Что такое база данных?

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

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

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

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

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

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

bar1.gif (8693 bytes)

2.Создание базы данных и работа в окне базы данных

2.1. Проектирование базы данных

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

2.1.1. Этапы проектирования базы данных

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

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

3 Определение необходимых в таблице полей.

4 Задание индивидуального значения каждому полю.

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

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

7 Добавление данных и создание других объектов базы данных.

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

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

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

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

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

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

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

· Информация в таблице не должна дублироваться. Не должно быть повторений и между таблицами.

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

· Каждая таблица должна содержать информацию только на одну тему.

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

3 Определение необходимых в таблице полей

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

· Каждое поле должно быть связано с темой таблицы.

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

· В таблице должна присутствовать вся необходимая информация.

· Информацию следует разбивать на наименьшие логические единицы (Например, поля «Имя» и «Фамилия», а не общее поле «Имя»).

4 Задание индивидуального значения каждому полю

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

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

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

Желательно изучить связи между таблицами в уже существующей базе данных. Для просмотра связей в базе данных «Борей» откройте файл Борей.mdb и выберите команду Схема данных в меню Сервис.

6 Обновление структуры базы данных

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

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

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

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

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

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

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

2.2. Создание базы данных

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

2.2.1. Создание базы данных с помощью мастера

1. При запуске Microsoft Access открывается диалоговое окно, в котором предлагается создать новую базу данных или открыть существующую. Если появляется это диалоговое окно, выберите параметр Запуск мастера, а затем нажмите кнопку ОК.

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

2. Установите указатель на нужный значок шаблона базы данных и дважды нажмите кнопку мыши.

3. Укажите имя и каталог для создаваемой базы данных.

4. Чтобы начать создание новой базы данных, нажмите кнопку OK.

2.2.2. Создание базы данных без помощи мастера

1. При запуске Microsoft Access открывается диалоговое окно, в котором предлагается создать новую базу данных или открыть существующую. Если появляется это диалоговое окно, выберите параметр Новая база данных, а затем нажмите кнопку ОК.

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

2. Укажите имя и каталог базы данных и нажмите кнопку ОК.

После создания пустой базы данных необходимо самостоятельно создать объекты этой базы данных.

bar1.gif (8693 bytes)

3.Поиск и открытие баз данных

3.1. Открытие базы данных

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

2. В поле Папка выберите диск, на котором находится файл базы данных.

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

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

3.2. Поиск файлов

Для поиска файлов используются диалоговые окна Открытие файла базы данных, Импорт и Связь (меню Файл), а также База данных для преобразования, База данных для сжатия, Восстановление базы данных, Сохранение файла MDE под именем и База данных для шифрования/дешифрования (меню Сервис). Файл можно найти по имени, типу, дате последнего изменения или содержащемуся в нем тексту. Также поиск осуществляется по специальным свойствам файла, таким как автор, тема, должность или дата создания.

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

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

3.2.1. Выполнение поиска файлов

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

2. В поле Папка выберите диск, на котором находится файл базы данных.

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

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

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

6. Для создания более подробного условия поиска с использованием свойств файла нажмите кнопку Дополнительно.

7. Нажмите кнопку Найти.

8. Для отмены поиска нажмите кнопку Остановить.

bar1.gif (8693 bytes)

4.Работа в окне базы данных

Окно базы данных - окно, которое открывается при открытии базы данных Microsoft Access. Это окно содержит вкладки Таблицы, Запросы, Формы, Отчеты, Макросы и Модули. При выборе вкладки выводится список всех объектов этого типа в базе данных.

 

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

4.1. Скрытие объектов в окне базы данных

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

2. Нажмите кнопку Свойства на панели инструментов.

3. Установите флажок Скрытый и нажмите кнопку OK.

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

bar1.gif (8693 bytes)

5.Копирование, сохранение, переименование и удаление

5.1.  Копирование таблицы, запроса, формы, отчета, макроса или модуля

1. В окне базы данных выберите вкладку, содержащую копируемый объект базы данных.

2. Выберите объект и нажмите кнопку Копировать на панели инструментов.

3. При копировании объекта в другую базу данных закройте текущую базу и откройте ту, в которую нужно вставить объект.

4. При открытом окне базы данных нажмите кнопку Вставить на панели инструментов.

5. Введите нужные сведения в диалоговое окно Вставка и нажмите кнопку OK.

5.2. Сохранение таблицы, запроса, формы, отчета, макроса или модуля

· Нажмите кнопку Сохранить на панели инструментов.

При первом сохранении объекта базы данных введите его имя в соответствии с соглашением об именах объектов Microsoft Access в диалоговое окно Сохранение и нажмите кнопку OK.

5.3. Переименование таблицы, запроса, формы, отчета, макроса или модуля

1. Убедитесь, что объект базы данных, который нужно переименовать, закрыт.

2. В окне базы данных выберите вкладку, содержащую нужный объект.

3. Нажмите кнопку мыши на имени объекта (не на его значке), а затем снова нажмите кнопку мыши, чтобы изменить имя.

4. Введите новое имя объекта в соответствии с соглашением об именах объектов Microsoft Access и нажмите клавишу ENTER.

При переименовании объекта базы данных, такого как, например, таблица, необходимо обновить все ссылки на этот объект в других объектах базы данных, таких как формы или отчеты. Например, при создании формы, связанной с таблицей, при переименовании последней, следует изменить имя таблицы в свойстве формы Источник записей (Record Source).

5.4. Удаление таблицы, запроса, формы, отчета, макроса или модуля

1. В окне базы данных выберите вкладку, содержащую объект базы данных, который нужно удалить.

2. Выберите объект и нажмите клавишу DEL.

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

bar1.gif (8693 bytes)

6.Создание, импорт и связывание таблиц

6.1. Общие сведения о таблицах

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

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

Каждое поле в таблице «Товары» содержит данные определенного рода о каждом товаре, например, название товара. Каждая запись в таблице «Товары» содержит все сведения об одном товаре, такие как название, код поставщика, количество товара на складе и т.д.

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

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

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

Уникальный индекс - индекс, определенный для поля с заданным для свойства Индексированное поле (Indexed) значением «Да (Совпадения не допускаются)». При этом ввод в индексированное поле повторяющихся значений становится невозможным. Для ключевых полей уникальный индекс создается автоматически.

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

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

Пустое значение (Null) - значение, используемое для представления отсутствующих или неизвестных данных. Значение Null может использоваться в выражениях и вводиться в поля и запросы. В конструкциях Visual Basic пустые значения представляются ключевым словом Null. Некоторые поля, например, поля, определенные как ключевые, не могут содержать пустых значений.

6.2. Создание таблицы

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

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

В Microsoft Access существует четыре способа создания пустой таблицы.

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

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

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

· Определение всех параметров макета таблицы в режиме конструктора.

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

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

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

· Данные можно связать или импортировать из другой базы данных Microsoft Access или из множества форматов файлов других программ.

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

6.3. Открытие таблицы

1. В окне базы данных выберите вкладку Таблицы.

2. Выберите имя таблицы, которую необходимо открыть.

3. Чтобы открыть таблицу в режиме конструктора, нажмите кнопку Конструктор.

Чтобы открыть таблицу в режиме таблицы, нажмите кнопку Открыть.

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

6.4. Редактирование, проверка орфографии и печать

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

Для проверки орфографии в выделенных текстовых полях или полях МЕМО используется кнопка Орфография на панели инструментов.

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

6.4.1. Выделение полей и записей в режиме таблицы

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

Выделение

Установка указателя и нажатие кнопки мыши

Данные в поле

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

Целое поле

На левой границе поля таблицы.

Соседние поля

На левой границе поля. Для расширения области выделения перемещайте указатель при нажатой кнопке мыши.

Столбец

В области выделения поля.

Соседние столбцы

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

Запись

В области выделения записи.

Несколько записей

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

Все записи

Выберите в меню Правка команду Выделить все записи.

6.4.2. Изменение шрифта и его начертания, размера и цвета в режиме таблицы

1. Откройте таблицу, запрос или форму в режиме таблицы.

2. Выберите команду Шрифт в меню Формат.

3. Выберите нужные параметры.

6.4.3. Изменение вида сетки и цвета фона в режиме таблицы

1. Откройте таблицу, запрос или форму в режиме таблицы.

2. Выберите команду Ячейки в меню Формат.

3. Выберите нужные параметры.

6.4.4. Изменение макета таблицы

· Чтобы переместить столбец, выделите его (щелкните мышью заголовок столбца). Затем перетащите столбец с помощью мыши на нужное место.

· Чтобы скрыть столбец, выделите его и выберите команду Скрыть столбцы в меню Формат.

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

6.5. Настройка таблицы

6.5.1. Переключение между режимами таблиц

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

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

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

Конструктор таблиц - окно, в котором создается макет таблицы.

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

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

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

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

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

6.5.2. Определение ключа

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

Чтобы определить ключ, выделите строку с описанием нужного поля и нажмите кнопку Ключ на панели инструментов.

6.5.3. Определение типа данных

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

6.6. Поля и выбор типов данных

6.6.1. Данные, используемые в поле таблицы

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

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

· Сколько места необходимо для хранения значений в поле.

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

· Нужна ли сортировка или индексирование поля. Сортировать и индексировать поля MЕМО, гиперссылки и объекты OLE невозможно.

· Необходимо ли использование полей в группировке записей в запросах или отчетах. Поля MЕМО, гиперссылки и объекты OLE использовать для группировки записей нельзя.

· Каким образом должны быть отсортированы значения в поле. Числа в текстовых полях сортируются как строки чисел (1, 10, 100, 2, 20, 200 и т.д.), а не как числовые значения. Для сортировки чисел как числовых значений используйте числовые поля или поля, имеющие денежный формат. Также многие форматы дат невозможно отсортировать надлежащим образом, если они были введены в текстовое поле. Для обеспечения сортировки используйте поле типа «Дата/время».

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

Тип данных

Используется

Размер

Текстовый

Текст или комбинация текста и чисел, например, адрес, а также числа, не требующие вычислений, например, номера телефонов, номенклатурные номера или почтовый индекс.

До 255 символов.Хранятся только введенные в поле символы, позиции, не использованные в текстовом поле, не хранятся. Для управления максимальным числом вводимых символов определите свойство Размер поля (FieldSize).

Поле MЕМО

Длинный текст или числа, например, пометки или описание.

До 64000 символов.

Числовой

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

1, 2, 4 или 8 байт. 16 байт только для кодов репликации.

Дата/время

Даты и время.

8 байт.

Денежный

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

8 байт.

Счетчик

Автоматическая вставка последовательных (отличающихся на 1) или случайных чисел при добавлении записи.

4 байта. 16 байт только для репликации кодов.

Логический

Поля, содержащие только одно или два значения, таких как «Да/Нет», «Истина/Ложь», «Включено/Выключено».

1 бит.

Объекты OLE

Объекты (например, документы Microsoft Word, электронные таблицы Microsoft Excel, рисунки, звуки и другие данные), созданные в других программах, использующих протокол OLE. Объекты могут быть связанными или внедренными в таблицу Microsoft Access. Для отображения объекта OLE в форме или отчете необходимо использовать присоединенную рамку объекта.

До 1 гигабайта (ограничено объемом диска).

Мастер подстановок

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

Размер такой же, как и размер ключевого поля, которое также является мастером подстановок, обычно 4 байта.

Гиперссылки

Поле, в котором хранятся гиперссылки. Гиперссылка может быть либо типа путь UNC, либо URL.

До 64000 символов.

Числовые, денежные и логические типы данных, а также Дата/Время, обеспечивают определенные ранее форматы отображения. Для выбора форматов для каждого типа данных определите свойство Формат. Также можно создать пользовательский формат отображения для всех данных, кроме объектов OLE.

6.6.2. Добавление поля (столбца) в таблицу в режиме таблицы

1. Откройте таблицу в режиме таблицы.

2. Выберите столбец, слева от которого требуется добавить новый столбец, и выберите в меню Вставка команду Столбец.

3. Установите указатель на заголовок столбца, дважды нажмите кнопку мыши и введите имя поля, следуя соглашениям об именах объектов Microsoft Access.

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

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

6.6.3. Создание полей для чисел и денежных знаков

1. Откройте таблицу в режиме конструктора.

2. Для вставки поля выберите строку, над которой его необходимо поместить, и на панели инструментов нажмите кнопку Добавить строки.

Для добавления поля в конец таблицы выберите первую пустую строку.

3. В столбце Имя поля введите имя, следуя соглашениям об именах объектов Microsoft Access.

4. В столбце Тип данных нажмите кнопку мыши на стрелке и выберите либо Числовой тип, либо Денежный.

5. Для создания числового поля в нижней части окна необходимо установить свойство Размер поля (FieldSize) для требуемого размера.

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

7. Если необходимо, установите и другие свойства полей.

Изменения, внесенные в форматы валют в окне «Языки и стандарты» панели управления Windows, будут автоматически отображаться в денежных полях базы данных. Изменения касаются только форматов и никак не влияют на содержащиеся в полях данные.

6.6.4. Создание логических полей

1. Откройте таблицу в режиме конструктора.

2. Для вставки поля выберите строку, над которой его необходимо поместить, и на панели инструментов нажмите кнопку Добавить строки.

Для добавления поля в конец таблицы выберите первую пустую строку.

3. В столбце Имя поля введите имя, следуя соглашениям об именах объектов Microsoft Access.

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

5. Чтобы в поле вместо установленных по умолчанию значений «Да/Нет» отображались «Истина/Ложь» или «Включено/Выключено», в нижней части окна в поле Формат выберите требуемый формат.

6. Если необходимо, установите и другие свойства полей.

6.6.5. Создание полей для дат и времени

1. Откройте таблицу в режиме конструктора.

2. Для вставки поля выберите строку, над которой его необходимо поместить, и на панели инструментов нажмите кнопку Добавить строки.

Для добавления поля в конец таблицы выберите первую пустую строку.

3. В столбце Имя поля введите имя, следуя соглашениям об именах объектов Microsoft Access.

4. В столбце Тип данных нажмите стрелку и выберите пункт Дата/Время.

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

6. Если необходимо, установите и другие свойства полей.

Хранение значений дат и времени в поле типа Дата/Время обеспечивает правильную сортировку.

6.6.6. Изменение типа данных поля

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

2. Откройте таблицу в режиме конструктора.

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

4. На панели инструментов нажмите кнопку Сохранить .

В больших таблиц изменение типов данных может занять значительное время. Для отмены преобразования в течение его работы нажмите клавиши CTRL+BREAK, а затем кнопку OK.

6.7. Настройка полей

6.7.1. Изменение имени поля в таблице

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

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

6.7.2. Удаление поля из таблицы в режиме таблицы

1. Откройте таблицу в режиме таблицы.

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

3. В меню Правка выберите команду Удалить столбец.

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

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

6.8. Работа с ключами и индексами

6.8.1. Типы используемых ключевых полей

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

В Microsoft Access можно выделить три типа ключевых полей: счетчик, простой ключ и составной ключ.

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

Ключевые поля счетчика

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

Простой ключ

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

Составной ключ

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

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

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

6.8.2. Создание и изменение ключевых полей

1. Откройте таблицу в режиме конструктора.

2. Выделите одно или несколько полей, которые необходимо определить как ключевые.

Для выделения одного поля выберите область выделения строки нужного поля.

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

3. Нажмите кнопку Ключевое поле на панели инструментов.

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

· Для составного ключа существенным может оказаться порядок образующих ключ полей. Сортировка записей осуществляется в соответствии с порядком ключевых полей в бланке в режиме конструктора таблицы. Если необходимо указать другой порядок сортировки без изменения порядка ключевых полей, то сначала определите ключ, как это описано выше, а затем нажатием кнопки Индексы на панели инструментов откройте окно «Индексы» и укажите другой порядок полей для индекса с именем «PrimaryKey».

6.8.3. Удаление ключевых полей

1. Если ключевое поле связано, то до удаления ключа необходимо удалить данную связь.

2. Откройте таблицу в режиме конструктора.

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

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

bar1.gif (8693 bytes)

7.Определение связей и обеспечение целостности данных

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

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

 

 

 

 

 

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

 

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

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

Тип создаваемой связи зависит от полей, для которых определяется связь.

 

 

 

 

 

 

 

· Отношение «один-ко-многим» создается в том случае, когда только одно из полей является ключевым или имеет уникальный индекс.

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

 

 

 

· Отношение «один-к-одному» создается в том случае, когда оба связываемых поля являются ключевыми или имеют уникальные индексы.

Отношение «один-к-одному»

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

 

 

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

При отношении «многие-ко-многим» одной записи в таблице A могут соответствовать несколько записей в таблице B, а одной записи в таблице B несколько записей в таблице A. Такая схема реализуется только с помощью третьей (связующей) таблицы, ключ которой состоит из по крайней мере двух полей, которые являются полями внешнего ключа в таблицах A и B. Например, между таблицами «Заказы» и «Товары» имеется отношение «многие-ко-многим», которое определяется путем создания двух связей с отношением «один-ко-многим» для таблицы «Заказано».

1. Закройте все открытые таблицы. Создавать или изменять связи между открытыми таблицами нельзя.

2. Переключитесь в окно базы данных. Для переключения в окно базы данных из других окон нажмите клавишу F11.

3. Нажмите кнопку Схема данных на панели инструментов.

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

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

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

Для связывания сразу нескольких полей переместите их при нажатой клавише CTRL.

В большинстве случаев связывают ключевое поле (представленное в списке полей полужирным шрифтом) одной таблицы с соответствующим ему полем (часто имеющим то же имя), которое называют полем внешнего ключа во второй таблице. Связанные поля не обязательно должны иметь одинаковые имена, но они должны иметь одинаковые типы данных (из этого правила существует два исключения) и иметь содержимое одного типа. Кроме того, связываемые поля числового типа должны иметь одинаковые значения свойства Размер поля (Field Size). Существуют следующие два исключения из правила: поле счетчика можно связывать с числовым полем, если в последнем в свойстве Размер поля (Field Size) задано значение «Длинное целое»; а также поле счетчика можно связать с числовым, если для обоих полей в свойстве Размер поля (Field Size) задано значение «Код репликации».

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

8. Для создания связи нажмите кнопку Создать.

9. Для каждой пары таблиц, которые необходимо связать, выполните шаги 5-8.

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

7.3. Изменение существующих связей

1. Закройте все открытые таблицы. Изменять связи между открытыми таблицами нельзя.

2. Переключитесь в окно базы данных. Для переключения в окно базы данных из другого окна нажмите клавишу F11.

3. На панели инструментов нажмите кнопку Схема данных.

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

5. Дважды щелкните линию связи, которую необходимо изменить.

6. Установите параметры связи.

7.4. Удаление связи

1. Закройте все открытые таблицы. Удалять связи между открытыми таблицами нельзя.

2. Переключитесь в окно базы данных. Для переключения в окно базы данных их другого окна нажмите клавишу F11.

3. На панели инструментов нажмите кнопку Схема данных.

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

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

7.5. Что означает целостность данных?

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

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

· Связанные поля имеют один тип данных. Здесь существует два исключения. Поле счетчика может быть связано с числовым полем, если в последнем в свойстве Размер поля (Field Size) указано значение «Длинное целое». А также поле счетчика можно связать с числовым полем, если и в обеих ячейках свойства Размер поля (Field Size) задано значение «Код репликации».

· Обе таблицы принадлежат одной базе данных Microsoft Access. Если таблицы являются связанными, то они должны быть таблицами Microsoft Access. Для установки целостности данных база данных, в которой находятся таблицы, должна быть открыта. Для связанных таблиц из баз данных других форматов установить целостность данных невозможно.

Установив целостность данных, необходимо следовать следующим правилам:

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

· Не допускается удаление записи из главной таблицы, если существуют связанные с ней записи в подчиненной таблице. Например, невозможно удалить запись из таблицы «Сотрудники», если в таблице «Заказы» имеются заказы, относящиеся к данному сотруднику.

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

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

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

bar1.gif (8693 bytes)

8.Поиск и сортировка данных

8.1. Поиск

8.1.1. Поиск записи по ее номеру в режиме таблицы или формы

1. Откройте таблицу, запрос или форму в режиме таблицы или форму в режиме формы.

2. Установите указатель на номер в поле номера записи и дважды нажмите кнопку мыши.

3. Введите номер нужной записи и нажмите клавишу ENTER.

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

8.1.2. Поиск пустых полей и пустых строк с помощью диалогового окна «Поиск»

1. В режиме формы или в режиме таблицы выберите поле (столбец), в котором требуется провести поиск, и нажмите кнопку Найти на панели инструментов.

2. Выполните одно из следующих действий.

· Для того чтобы найти неотформатированные пустые поля, введите Null или Is Null в поле Образец и проверьте, что флажок С учетом формата полей снят. Если пустые поля отформатированы (например, с помощью значения Отсутствует), введите форматирующую строку и проверьте, что флажок С учетом формата полей установлен.

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

3. В поле Просмотр выберите Вверх, Вниз или Все.

4. В поле Совпадение выберите Поля целиком.

5. Проверьте, что установлен флажок Только в текущем поле.

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

8.1.3. Поиск повторяющихся значений записей или полей в таблице при помощи мастера запросов

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

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

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

2. В диалоговом окне Новый запрос выберите мастера Повторяющиеся записи.

3. Нажмите кнопку OK.

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

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

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

8.2. Сортировка записей в таблице, запросе, форме или подчиненной форме

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

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

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

8.2.1. Особенности сортировки записей

· При сохранении таблицы, запроса или формы сохраняется и их порядок сортировки. Если новая форма или отчет основываются на таблице или запросе, порядок сортировки которых был сохранен вместе с ними, то он перейдет и к новой форме или отчету.

· В одном или нескольких полях результатов запроса или расширенного фильтра может быть отсортировано до 255 символов.

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

· Если бланк запроса или фильтра содержит знак «звездочка» из списка полей, то определить в нем порядок сортировки можно, только добавив в него поля, которые необходимо отсортировать.

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

· Цифры, находящиеся в текстовых полях, сортируются как строки символов, а не как числовые значения. Чтобы их отсортировать в числовом порядке, все текстовые строки содержать одинаковое количество символов. Если строка содержит меньшее количество символов, то в начале должны стоять незначащие нули. Например, результатом сортировки по возрастанию текстовых строк «1», «2», «11» и «22» будет «1», «11», «2», «22». Чтобы строки были отсортированы надлежащим образом, перед числами с меньшей разрядностью введите нули: «01», «02», «11», «22». Еще одним решением данной проблемы для полей, не содержащих пустые значения, будет использование функции Val для сортировки числовых значений строк. Например, если столбец «Возраст» является текстовым полем, то, чтобы должным образом произвести в нем сортировку данных, в ячейке Поле необходимо указать функцию Val([Возраст]), а в ячейке Сортировка указать требуемый порядок сортировки. Если в текстовом поле находятся только числовые значения или значения дат, то рекомендуется изменить в данной таблице тип поля на числовой, денежный или Дата/время. Тогда сортировка содержащихся в данном поле чисел или дат будет выполнена надлежащим образом без ввода дополнительных нулей.

· При сортировке поля в возрастающем порядке записи, содержащие пустые поля (с пустыми значениями), указываются в списке первыми. Если поле содержит записи как с пустыми значениями, так и с пустыми строками, при сортировке первыми будут отображены поля с пустыми значениями, а сразу за ними поля с пустыми строками.

· Невозможно сортировать поля МЕМО, гиперссылки или объекты OLE.

bar1.gif (8693 bytes)

9.Работа с запросами

9.1. Запросы и их применение

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

 

 

 

 

 

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

 

 

 

 

 

9.2. Создание запроса

Часто запросы в Microsoft Access создаются автоматически, и пользователю не приходится самостоятельно их создавать.

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

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

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

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

9.3. Типы запросов, создаваемых в Microsoft Access

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

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

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

Запросы на изменение (запросы на создание таблицы, удаление, обновление, добавление записей)

Запросы SQL (запросы на объединение, запросы к серверу, управляющие запросы, подчиненные запросы)

9.3.1. Запросы на выборку и их использование

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

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

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

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

2. В диалоговом окне Новый запрос выберите мастера Простой запрос.

3. Нажмите кнопку OK.

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

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

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

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

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

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

2. В диалоговом окне Новый запрос выберите команду Конструктор и нажмите кнопку OK.

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

4. Для добавления объектов в запрос дважды щелкните кнопкой мыши на имени каждого, а затем нажмите кнопку Закрыть.

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

Если таблицы или запросы связаны, то тип соединения можно изменить, тем самым влияя на выбор записей в запросе.

6. Добавьте поля в запрос, перемещая их имена с помощью мыши из списка полей в бланк запроса.

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

8. Для сохранения запроса нажмите кнопку Сохранить на панели инструментов. Введите имя, соответствующее соглашениям об именах объектов Microsoft Access, и нажмите кнопку OK.

9. Для просмотра результатов запроса нажмите кнопку Вид на панели инструментов.

9.3.2. Запросы на изменение и их использование

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

Запрос на удаление

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

Запрос на обновление записей

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

Запрос на добавление

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

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

· Добавление записей, если некоторые поля из одной таблицы не существуют в другой. Например, в демонстрационной базе данных «Борей» таблица «Клиенты» содержит 11 полей. Пусть требуется добавить записи из другой таблицы с полями, соответствующими 9 из 11 полям таблицы «Клиенты». Запрос на добавление добавит данные в совпадающие поля и пропустит остальные.

Запрос на создание таблицы

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

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

· Создание отчетов, содержащих данные, соответствующие определенному моменту времени. Например, 15 мая 96 года необходимо напечатать отчет об объеме продаж, сделанных в первом квартале, основанный на данных, содержащихся в базовой таблице на 9:00 A.M. 1 апреля 96. Отчет, основанный на запросе или инструкции SQL, выбирает из таблиц самые последние данные (данные на 15 мая 96), а не записи на указанный момент времени. Чтобы получить данные на 9:00 A.M. 1 апреля 96 , необходимо разработать запрос на создание таблицы, в котором требуемые записи отбираются в зависимости от указанного момента времени и помещаются в новую таблицу. Затем в качестве основы для отчета следует использовать эту таблицу, а не запрос.

· Создание резервной копии таблицы.

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

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

9.3.3. Запросы с параметрами и их использование

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

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

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

9.3.4. Перекрестные запросы и их использование

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

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

 

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

 

 

 

 

9.3.5. Запросы SQL и их использование

Запрос SQL - это запрос, создаваемый при помощи инструкций SQL. Примерами запросов SQL могут служить запросы на объединение, запросы к серверу, перекрестные и подчиненные запросы.

Запрос на объединение

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

Запрос к серверу

Этот тип запроса отправляет команды непосредственно в базы данных ODBC, например Microsoft SQL, причем используются только команды, поддерживаемые сервером. Например, запрос к серверу используется для возвращения или изменения данных.

Управляющий запрос

Данный тип запроса создает или вносит изменения в объекты базы данных, такие как таблицы Microsoft Access или Microsoft SQL Server.

Подчиненный запрос

Этот тип запроса состоит из вложенной в запрос на выборку или запрос на изменение инструкцию SQL SELECT. Чтобы определить новое поле, данную инструкцию можно ввести о строку Поле в бланке запроса. Чтобы указать для данного поля условие отбора, введите инструкцию в строку Условие отбора. Подчиненные запросы используются для:

· проверки наличия результатов подчиненного запроса (используются зарезервированные слова EXISTS или NOT EXISTS);

· поиска значений в основном запросе, которые равны, превышают или меньше значений, возвращаемых подчиненным запросом (используются зарезервированные слова ANY, IN или ALL);

· создания подчиненных запросов внутри подчиненных запросов (вложенные запросы).

9.4. Вычисления в запросе

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

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

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

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

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

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

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

При выполнении расчетов допускаются сложные выражения, например, Sum ([НаСкладе]+[Заказано]). Имеется также возможность определить для вычисляемого поля условие отбора, позволяющее отбирать используемые в расчетах данные.

 

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

Вычисляемые поля используются также для обновления данных в запросе на обновление. Например, следующее выражение в ячейке Обновление позволяет увеличить все значения в поле «Цена» на 5 процентов.

9.5. Открытие и запуск запроса

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

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

bar1.gif (8693 bytes)

10.Работа с формами

10.1. Общие сведения о формах

Формы используются для различных целей.

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

 

 

 

 

 

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

 

 

 

 

 

10.2.  Разделы формы

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

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

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

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

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

10.3. Создание формы

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

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

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

10.3.1. Создание формы с помощью автоформы

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

1. В окне базы данных выберите вкладку Таблицы или Запросы.

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

3. Нажмите кнопку раскрытия списка рядом с кнопкой Новый объект на панели инструментов и выберите элемент Автоформа.

10.3.2. Создание формы с помощью мастера

1. В окне базы данных выберите вкладку Формы.

2. Нажмите кнопку Создать.

3. В диалоговом окне Новая форма выберите нужного мастера. Описание мастера появляется в левой части диалогового окна.

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

5. Нажмите кнопку OK.

6. Если на шаге 3 были выбраны Мастер форм, Диаграмма или Сводная таблица, то при создании формы следуйте инструкциям, выводимым в диалоговых окнах соответствующего мастера. При выборе элементов Автоформа: в столбец, Автоформа: ленточная или Автоформа: табличная форма создается автоматически.

Изменить созданную форму можно в режиме конструктора.

10.3.3. Создание формы на базе нескольких таблиц

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

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

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

10.4. Настройка формы

10.4.1. Изменение вида формы

Нетрудно изменить внешний вид всей формы или ее части.

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

· Для изменения внешнего вида одного элемента управления, например поля, выделите его. Затем на панели инструментов Форматирование выберите другой шрифт, размер шрифта или другие параметры.

· Чтобы добавить в форму фоновый рисунок, в окне свойств формы укажите имя файла нового рисунка в ячейке свойства Рисунок (Picture) или вызовите построитель рисунков с помощью кнопки построителя.

10.4.2. Перемещение, изменение и выравнивание

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

· Для выделения элемента управления, например поля, установите на него указатель и нажмите кнопку мыши. Чтобы выделить несколько элементов управления, нажмите клавишу SHIFT и, не отпуская ее, выделите все нужные элементы.

· Выделив элемент управления, можно с помощью мыши:

· Чтобы выровнять элементы управления по одному из них, выделите элементы, которые следует выровнять. Затем в меню Формат выберите команду Выровнять и нужную подкоманду.

10.4.3. Изменение подписи и источника данных

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

· Чтобы изменить текст подписи, установите указатель на подпись и нажмите кнопку мыши, затем выделите текст и введите новый.

· Чтобы изменить поле, с которым связан элемент управления, выделите этот элемент.

Нажмите кнопку Свойства на панели инструментов для отображения окна свойств.

 

10.5. Добавление и изменение поля или элемента управления в форму или отчет

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

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

Присоединенный элемент управления - элемент управления в форме или отчете, в котором выводится значение поля базовой таблицы, запроса или инструкции SQL. Имя поля таблицы, запроса или инструкции SQL задается в качестве значения свойства Данные (ControlSource) элемента управления. Например, поле в форме, в котором выводится фамилия служащего, является присоединенным к полю «Фамилия» таблицы «Сотрудники».

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

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

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

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

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

Для добавления в форму таких элементов управления как надписи или кнопки служит панель элементов.

Чтобы создать надпись, нажмите кнопку Надпись на панели элементов. Затем выберите в форме место, куда ее следует поместить, введите нужный текст и нажмите клавишу ENTER.

 

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

Имеется возможность изменения типа элемента управления. Например, можно изменить…

 

Для изменения типа элемента управления…

выберите в меню Формат команду Преобразовать элемент в …

 

 

10.6. Открытие формы

1. В окне базы данных выберите вкладку Формы.

2. Выберите форму, которую нужно открыть.

3. Нажмите кнопку Открыть для открытия формы в режиме формы или кнопку Конструктор для открытия формы в режиме конструктора.

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

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

10.7. Сохранение формы в виде отчета

1. Переключитесь в окно базы данных.

2. Выберите вкладку Формы.

3. Щелкните правой кнопкой мыши сохраняемую форму.

4. В появившемся контекстном меню выберите команду Сохранить как отчет.

5. Введите имя для отчета в поле Имя отчета.

6. Нажмите кнопку OK.

7. Выберите вкладку Отчеты и дважды щелкните мышью на отчете для его предварительного просмотра.

11. Отчет будет иметь те же элементы управления и свойства, что и форма.

bar1.gif (8693 bytes)

11.Задание значений свойств

11.1. Общие сведения об окне свойств

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

11.2. Задание свойств для формы, отчета, раздела или элемента управления

1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

2. Выполните одно из следующих действий.

· Чтобы задать значения свойств для формы или отчета, дважды щелкните область выделения формы или область выделения отчета, для открытия окна свойств формы или отчета.

· Чтобы задать значения свойств для раздела формы или отчета, дважды щелкните область выделения раздела для открытия окна свойств раздела.

· Чтобы задать значения свойств для элемента управления, убедитесь, что он выделен, и нажмите кнопку Свойства на панели инструментов. Также для открытия окна свойств можно просто дважды щелкнуть мышью нужный элемент управления.

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

· Если в ячейке свойства есть кнопка со стрелкой, нажмите ее и выберите значение из списка.

· Введите значение или выражение в ячейку свойства.

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

4 Если размер ячейки свойства не достаточен для задания или изменения значения свойства, то нажмите клавиши SHIFT+F2 (или щелкните правой кнопкой мыши и выберите команду Масштаб) для открытия окна Область ввода.

bar1.gif (8693 bytes)

12.Работа с отчетами

12.1. Общие сведения об отчетах

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

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

12.2. Создание

12.2.1. Создание отчета с помощью мастера

1. В окне базы данных выберите вкладку Отчеты.

2. Нажмите кнопку Создать.

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

4. Выберите имя таблицы или запроса, содержащих данные, по которым строится отчет.

5. Нажмите кнопку OK.

6. Если на шаге 3 выбран мастер отчетов, мастер диаграмм или мастер наклеек, выполняйте инструкции мастера, выводящиеся в диалоговом окне. Если выбран один из мастеров автоотчетов, отчет создается автоматически

Если созданный мастером отчет требует внесения изменений, сделайте это в режиме конструктора отчета.

12.2.2. Создание отчета без помощи мастера

1. В окне базы данных выберите вкладку Отчеты.

2. Нажмите кнопку Создать.

3. В диалоговом окне Новый отчет выберите пункт Конструктор.

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

5. Нажмите кнопку OK.

Новый отчет будет открыт в окне отчета в режиме конструктора.

12.3. Настройка отчета

Нетрудно изменить внешний вид всего отчета или его части.

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

· Для изменения внешнего вида одного элемента управления, например надписи, выделите его. Затем на панели инструментов Форматирование выберите другой шрифт, размер шрифта или другие параметры.

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

Нажмите кнопку Свойства на панели инструментов для вывода окна свойств.

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

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

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

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

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

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

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

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

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

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

Примечание отчета печатается один раз в конце отчета (на последней странице перед нижним колонтитулом) и может содержать результаты вычислений над всеми записями отчета. Этот раздел является самым последним в отчете.

12.5. Открытие отчета

1. В окне базы данных выберите вкладку Отчеты.

2. Выберите имя отчета.

3. Нажмите кнопку Конструктор, чтобы открыть отчет в режиме конструктора, или кнопку Просмотр, чтобы открыть отчет в режиме предварительного просмотра.

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

bar1.gif (8693 bytes)

13.Печать

FACE="Times New Roman">

13.1. Задание величины полей, ориентации и других параметров страницы

1. Откройте объект базы данных в одном из перечисленных ниже режимов.

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

· Откройте форму или отчет в любом режиме (или из окна базы данных).

· Откройте модуль в любом режиме.

2. В меню Файл выберите команду Параметры страницы.

3. Выберите одну из следующих вкладок, содержащую нужные параметры.

· Поля. Здесь задается ширина полей, а также режим печати только данных.

· Вкладка. Здесь определяется ориентация, размер бумаги, принтер.

· Столбцы. Здесь задается число, размер и макет столбца только для форм, отчетов и макросов.

4. Нажмите кнопку OK.

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

13.2. Печать формы из окна базы данных

1. Выберите вкладку Формы.

2. Выберите форму, которую необходимо распечатать.

3. В меню Файл выберите команду Печать.

4. В диалоговом окне Печать укажите нужные параметры.

5. Нажмите кнопку OK.

Microsoft Access распечатывает форму в режиме, указанном в свойстве Режим по умолчанию (DefaultView).

13.3. Печать таблицы, запроса, формы, отчета или модуля из ярлыка

После создания ярлыка для объекта базы данных этот объект можно распечатать прямо из значка ярлыка.

1. Щелкните ярлык правой кнопкой мыши.

2. Выберите команду Печать.

Чтобы быстро распечатать из ярлыка объект в системе Microsoft Windows, необходимо перетащить значок ярлыка на значок принтера в рабочем столе или папке «Принтеры».

13.4. Печать отчета

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

1. Выберите отчет в окне базы данных

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

2. Выберите в меню Файл команду Печать.

3. Укажите требуемые значения параметров в диалоговом окне Печать.

· В группе Принтер выберите принтер.

· В группе Печатать выберите печать всего отчета или определенного диапазона страниц.

· В группе Копии укажите число печатающихся копий и, при необходимости, печать с раскладкой по копиям.

4. Нажмите кнопку OK.

bar1.gif (8693 bytes)

14.Работа с меню и панелями инструментов

14.1. Общие сведения о панелях инструментов, строках меню и контекстных меню

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

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

14.2. Создание панели инструментов для всех баз данных

Чтобы создать панель инструментов, доступную во всех базах данных Microsoft Access, следует добавить кнопки на пустые встроенные панели инструментов Служебная программа 1 и Служебная программа 2.

1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

2. На вкладке Панели инструментов установите флажок Служебная программа 1 или Служебная программа 2 в списке панелей инструментов.

3. Для завершения создания панели инструментов выполните следующие действия.

· Добавьте кнопки из диалогового окна Настройка.

· Переместите или скопируйте кнопки с другой панели инструментов.

14.3. Добавление кнопки к панели инструментов

1. В меню Вид выберите команду Панели инструментов, а затем подкоманду Настройка.

2. Откройте панель инструментов, к которой нужно добавить кнопку.

3. Выберите вкладку Команды.

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

5. Перетащите нужную кнопку, объект или элемент ActiveX из поля Команды на открытую панель инструментов.

· Чтобы быстро добавить кнопку, открывающую объект базы данных, следует перетащить с помощью мыши объект из окна базы данных на панель инструментов.

· Пользователь может назначить клавишу для кнопки.

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

14.4. Добавление команды к меню

1. В меню Вид выберите команду Панели инструментов, а затем подкоманду Настройка.

2. Откройте строку меню, контекстное меню или панель инструментов, к которой нужно добавить команду.

3. Выберите вкладку Команды.

4. В поле Категории выберите нужный параметр.

5. Перетащите нужную команду из поля Команды в меню в строке меню, на панели инструментов Контекстные меню или на любой другой. После того, как будет выведен список команд (или пустой бланк, если меню новое), выберите нужное расположение для команды в меню и отпустите кнопку мыши.

14.5. Удаление кнопки панели инструментов

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

2. Если диалоговое окно Настройка открыто, просто уберите кнопку с панели инструментов, если нет, то уберите кнопку, удерживая при этом клавишу ALT.

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

14.6. Перемещение или копирование кнопки панели инструментов

1. Откройте панель инструментов, содержащую кнопку, которую нужно переместить или скопировать, а также панель инструментов, на которую нужно переместить или скопировать кнопку.

2. Выполните одно из следующих действий.

· Чтобы переместить кнопку панели инструментов при открытом диалоговом окне Настройка, просто перетащите в другое место на той же панели инструментов или на другую панель. Если диалоговое окно закрыто, выполните это, удерживая клавишу ALT.

· Чтобы скопировать кнопку панели инструментов при открытом диалоговом окне Настройка, перетащите, удерживая клавишу CTRL. Если диалоговое окно закрыто, выполните это, удерживая клавиши CTRL+ALT.

bar1.gif (8693 bytes)

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

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

15.1. Установка пароля

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

Внимание! Не используйте пароль базы данных, если предполагается выполнять репликацию базы данных. Реплицированные базы данных не могут быть синхронизированы, если определен пароль базы данных.

15.2. Шифрование и дешифрование базы данных

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

1. Запустите Microsoft Access без открытия базы данных.

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

2. В меню Сервис выберите команду Защита и подкоманду Шифровать/дешифровать.

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

4. Укажите имя, диск и папку для конечной базы данных и нажмите кнопку OK.

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

Примечания

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

· Если имя объекта базы данных версии 1.x содержит символ обратных одинарных кавычек (`), шифрование базы данных выполнить невозможно. В этом случае необходимо предварительно переименовать объект с помощью Microsoft Access версии 1.x, после чего изменить ссылки на объект в запросах, формах, отчетах, макросах и программах Visual Basic.

· Шифрование базы данных не препятствует доступу к ней легальных пользователей или групп. Разрешения на доступ к объектам являются частью системы защиты базы данных на уровне пользователей.

· Для выполнения шифрования и дешифрования базы данных необходимо иметь на диске достаточно места для двух версий базы данных, зашифрованной и дешифрованной.

15.3. Скрытие объектов в окне базы данных

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

2. Нажмите кнопку Свойства на панели инструментов.

3. Установите флажок Скрытый и нажмите кнопку OK.

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

bar1.gif (8693 bytes)

a NAME="AA15">

16.Работа с макросами

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

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

Последовательность макрокоманд

Следующий макрос состоит из серии макрокоманд. Эти макрокоманды выполняются каждый раз при запуске макроса. Для запуска макроса следует обратиться к имени макроса «Просмотр товаров».

Группа макросов

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

Например, следующая группа макросов с именем «Кнопки» состоит из трех родственных макросов: «Сотрудники», «Товары» и «Отчеты». В каждом макросе содержится макрокоманда ОткрытьФорму (OpenForm), а в макросе «Товары» кроме того макрокоманда СдвигРазмер (MoveSize).

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

Для запуска макроса из группы макросов следует указать имя группы, а затем, через точку, имя макроса. В предыдущем примере для обращения к макросу «Сотрудники» в группе макросов «Кнопки» следовало использовать синтаксис Кнопки.Сотрудники.

Условные макрокоманды

Для вывода столбца Условие следует в окне макроса в меню Вид выбрать команду Условия. Следующий макрос запускает макрокоманды Сообщение (MsgBox) и ОстановитьМакрос (StopMacro) только в тех случаях, когда условие в столбце Условие истинно (когда поле «КодПоставшика» имеет значение Null).

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

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

1. В окне базы данных выберите вкладку Макросы.

2. Нажмите кнопку Создать.

3. В ячейке столбца Макрокоманда нажмите кнопку раскрытия списка, открывающую список макрокоманд.

4. Выберите имя макрокоманды.

5. Введите текст комментария к макрокоманде (необязательно).

6. В нижней половине окна, при необходимости, укажите аргументы макрокоманды.

7. Для добавления в макрос других макрокоманд перейдите на следующую строку и повторите шаги с 3 по 6. Макрокоманды выполняются в порядке их расположения в бланке.

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

16.2. Открытие макроса

1. В окне базы данных выберите вкладку Макросы.

2. Выберите макрос, который нужно открыть.

3. Нажмите кнопку Конструктор.

4. Внесите требуемые изменения.

16.3. Использование условий в макросе

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

Например, в следующем макросе макрокоманда Остановить Макрос (StopMacro) выполняется только в том случае, если поле «Страна» имеет пустое (Null) значение. Если длина или структура значения поля «Индекс» не соответствует значению, соответствующему указанной стране, то выполняется одна или несколько пар макрокоманд Сообщение (MsgBox) и Отменить Событие (CancelEvent).

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

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

16.4. Запуск макроса

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

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

bar1.gif (8693 bytes)

a NAME="AA16">

17.Репликация

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

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

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

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

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

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

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

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

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

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

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

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

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

В Microsoft Access 97 реализованы различные инструменты и подходы создания реплик и управления ими.

Программа DAO

 

 

 

 

 

 

 

 

При использовании объектов доступа к данным (DAO) применяются их методы и свойства, например, метод MakeReplica и свойство DesignMasterID. Объекты DAO используются также для объявления объектов локальными или реплицируемыми.

Копирование базы данных на переносной компьютер

Для создания реплики базы данных, которая находится на рабочем столе, достаточно перетащить файл на значок «Портфель». Основная реплика и реплика будут созданы автоматически.

Создание реплик в Microsoft Access

Для создания и синхронизации реплик в Microsoft Access 97 предусмотрены команды репликации меню Сервис. Эти команды следует использовать при необходимости создания реплик и синхронизации их с открытой базой данных. Для объявления объектов локальными или реплицированными в Microsoft Access следует изменить их свойства.

Управление работой с набором реплик

Диспетчер репликации Microsoft служит для создания, планирования и управления наборами реплик.

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

17.1. Выбор инструмента репликации

Предусмотрено четыре инструмента репликации и синхронизации баз данных:

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

· Команды репликации из меню Сервис Microsoft Access позволяют создавать и синхронизировать реплики (или частичные реплики) по запросу.

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

· Диспетчер репликации Microsoft - полнофункциональное средство управления репликами, настройки расписания синхронизации и просмотра элементов набора реплик. Данная программа входит в пакет Microsoft Office 97 для разработчиков.

17.2. Создание реплик в Microsoft Access

Для создания и синхронизации реплик в Microsoft Access 97 предусмотрены команды репликации меню Сервис. Эти команды следует использовать при необходимости создания реплик и синхронизации их с открытой базой данных. Для объявления объектов локальными или реплицированными в Microsoft Access следует изменить их свойства.

Создание реплики - создание копий базы данных или объектов, допускающих синхронизацию.

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

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

Команда Восстановить основную реплику служит для назначения основной реплики в случае ее повреждения.

17.2.1. Создание реплики базы данных

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

2. Если база данных была защищена паролем, то его необходимо удалить.

3. Из меню Сервис выберите команду Репликация и подкоманду Создать реплику.

4. Нажмите кнопку Да в ответ на вопрос о закрытии базы данных.

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

6. В диалоговом окне Размещение новой реплики выберите место для размещения реплики.

7. Нажмите кнопку OK.

17.2.2. Назначение реплики основной репликой

1. Убедитесь, что ни данная реплика ни основная реплика нигде не используются.

2. Откройте реплику, которую следует назначить новой основной репликой .

3. Выберите в меню Сервис команду Репликация и подкоманду Синхронизация.

4. Выберите текущую основную реплику в списке.

5. Установите флажок Присвоить 'ИмяФайлаРеплики' статус основной.

6. Нажмите кнопку OK.

17.2.3. Удаление реплики из набора реплик

1. С помощью команды Windows Проводник найдите реплику, которую требуется удалить.

2. Выделите реплику и нажмите клавишу DELETE.

3. Попытайтесь провести синхронизацию с удаленной репликой из другого элемента набора реплик. (Эта процедура позволяет оповестить другие элементы о произведенном удалении).

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

17.3. Частичные реплики

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

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

17.3.1. Преимущества применения частичных реплик

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

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

Частичные реплики также имеют преимущества при копировании данных через локальные (LAN) или глобальные (WAN) сети. Ограничение данных дает сокращение объема информации, передаваемой по сети. Это может снизить интенсивность передачи по сети и затраты на передачу.

17.3.2. Создание частичной реплики с объектом доступа к данным (DAO)

Для создания частичной реплики:

1. Используйте метод MakeReplica объекта Database, задав константу dbRepMakePartial в качестве аргумента параметры. Частичная реплика будет создана.

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

3. Используйте метод PopulatePartial для передачи всех записей, отвечающих новому условию фильтра реплики, из полной реплики.

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

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

17.4. Преобразование реплицируемой базы данных в нереплицируемую

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

 

 

bar1.gif (8693 bytes)

a NAME="AA17">

18.События: совместная работа объектов базы данных

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

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

Предположим, что при нажатии кнопки Сведения в форме «Заказы» должна открываться форма «Товары». В следующем примере показано, как сделать это с помощью процедуры обработки события или с помощью макроса.

Отклик на событие «Нажатие кнопки» (Click) с помощью процедуры обработки события

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

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

 

Hosted by uCoz