Добавление логики, открываемой в форме подробностей
Теперь нужно добавить немного макроса в форму для нескольких элементов или таблицы. Макрос откроет форму подробностей и отобразит правильный элемент.
Не беспокойтесь, если вы мало работали с макросами. вы можете просто скопировать и вкопировать XML-текст, который вы найдете в этой процедуре.
Если используется форма таблицы, дважды щелкните ее в области навигации, чтобы открыть. Для формы с несколькими пунктами щелкните ее правой кнопкой мыши в области навигации и выберите пункт «Макет».
Если лист свойств еще не открыт, нажмите F4, чтобы открыть его.
Щелкните столбец, в который нужно добавить макрос. Это будет столбец, который вы щелкаете, чтобы открыть форму подробностей по завершению макроса. На рисунке выше макрос добавляется в столбец «ИД» frmContactList.
Совет: Макрос можно добавить в несколько столбцов.
На вкладке «События» окна свойств щелкните поле свойства «Нажатие кнопки» или «Нажатие кнопки «Нажать кнопку» (в зависимости от того, хотите ли вы открыть форму, щелкнув поле одним или двойным щелчком), а затем нажмите кнопку «Построить» .
Если Access запросит выбор построитель, выберите конструктор макроса и нажмите кнопку «ОК».
Щелкните пустую область конструктора макроса (под списком «Добавить новую макрос») и нажмите CTRL+V, чтобы ввести макрос. Если все будет хорошо, XML не будет показан в конструкторе макроса — он расширится в более учитаемые блоки макроса, как показано на следующем шаге.
При необходимости замените имя формы (frmContactDetails) и имя связываемого столбца (ID) именем формы и столбцом, который используется для связывания двух форм. На рисунке ниже показано, где может потребоваться внести изменения, чтобы совме собственные имена идентификаторов:
На вкладке «Конструктор» нажмите кнопку «Сохранить» и выберите «Закрыть».
Если вы хотите, чтобы столбцы со ссылками отображались как гиперссылки, чтобы другие люди знали, что они могут щелкать их, убедитесь, что столбец по-прежнему выбран, а затем на вкладке «Формат» установите для свойства «Показывать как гиперссылку» задав для свойства «Показывать как гиперссылки» задав для свойства «Всегда».
Сохраните и закроем форму, а затем снова и проверьте макрос, щелкнув измененный столбец или дважды щелкнув его.
Дополнительные сведения о макросах в базах данных рабочего стола см. в теме «Добавление логики в управление в базе данных рабочего стола».
2.4. Microsoft Access 2007
2.4.5. Создание запросов и поиск информации в базе данных
В СУБД Access 2007 можно создавать queries для отображения требуемых полей из записей одной или нескольких таблиц.
В СУБД Access 2007 применяются различные типы запросов: на выборку, на обновление, на добавление, на удаление, перекрестный query, выполнение вычислений, создание таблиц. Наиболее распространенным является query на выборку. Применяются два типа запросов: query по образцу (QBE) и query на основе структурированного языка запросов (SQL).
Запросы на выборку используются для отбора требуемой пользователю информации, содержащейся в нескольких таблицах. Они создаются только для связанных таблиц. Queries могут основываться как на нескольких таблицах, так и существующих запросах. СУБД Access 2007 включает такие средства создания запросов, как Мастер и Конструктор.
Кроме того, в СУБД Access 2007 существует множество средств для поиска и отображения информации, которая хранится в базе данных. Данные в таблицах можно отсортировать на основе любого поля или комбинации полей. Для извлечения из базы данных необходимых записей можно отфильтровать таблицу, применив средства фильтрации.
На скриншоте (рисунок 1) средства сортировки и фильтрации выделены скругленным прямоугольником красного цвета.
Рис. 1.
Рассмотрим создание запроса на выборку с помощью Конструктора
Для создания нового пустого запроса в режиме конструктора надо щелкнуть на пиктограмме Конструктор запросов (рисунок 2).
Рис. 2.
Откроется активное окно диалога Добавление таблицы (рисунок 3) на фоне неактивного окна «Запрос1». В этом окне можно выбрать таблицы и queries для создания новых запросов.
Рис. 3.
В окне Добавление таблицы следует выбрать несколько таблиц из представленного списка таблиц, на основе которых будет проводиться выбор данных, и щелкнуть на кнопке Добавить. После этого закрыть окно Добавление таблицы, а окно «Запрос1» станет активным (рисунок 4).
Рис. 4.
Окно Конструктора состоит из двух частей – верхней и нижней. В верхней части окна размещается схема данных запроса, которая содержит список связанных таблиц. В нижней части окна находится Бланк построения запроса QBE, в котором каждая строка выполняет определенную функцию.
Переместим имена полей с таблиц-источников в Бланк. Из таблицы Группы студентов переместим поле Название в первое поле Бланка, из таблицы Студенты переместим поле Фамилии во второе поле, а из таблицы Успеваемость переместим поле Оценка в третье поле и из таблицы Дисциплины переместим поле Название в четвертое поле Бланка запросов.
При необходимости можно задать принцип сортировки (по возрастанию или по убыванию) результатов запроса. В строке «Вывод на экран» автоматически устанавливается флажок просмотра информации.
Условия ограниченного поиска или критерий поиска информации вводится в строке «Условия» отбора и строке «Или». Например, введем критерий поиска — «5/A» в строке «Условия» для поля Оценка. В этом случае в результате выполнения запроса на экране будут отображаться все фамилии студентов, которые получили оценку 5/A (рисунок. 5).
Рис. 5.
Далее надо закрыть окно запроса Запрос1, появится окно диалога Сохранить, ответить — Да и ввести имя запроса, например «Успеваемость студентов». Для запуска запроса дважды щелкнем на query «Успеваемость студентов», откроется таблица с результатами выполненного запроса (рис. 6).
Рис. 6.
Далее создаем параметрический query или query с параметрами. Создаем этот query также как и предыдущий, в режиме конструктора, но только в строке Условия отбора для поля Фамилия введем условие отбора в виде приглашения в квадратных скобках, например . В этом случае в результате выполнения запроса на экране будет отображаться фамилия студента и все дисциплины, по которым он получил оценку.
Закрыть окно запроса на выборку. На вопрос о сохранении изменения ответить — Да и ввести имя запроса, например «Параметрический query». Запустим Параметрический query, дважды щелкнув на нем. В открывшемся на экране окне диалога «Введите значение параметра» надо ввести фамилию студента, информацию об успеваемости которого необходимо получить (рис. 8).
Рис. 7.
Затем надо щелкнуть на кнопке ОК, откроется таблица с результатами выполненного запроса (рис. 8).
Рис. 8.
В некоторых случаях для создания запросов можно использовать Мастер запросов. После создания запросов на выборку информации из БД Access 2007 можно приступать к формированию форм.
Далее >>> Раздел: 2.4.6. Создание форм для ввода данных в таблицы базы данных Access 2007
Общие свойства полей
Общие свойства задаются для каждого поля на вкладке Общие и зависят от выбранного типа данных.
1. Размер поля задает максимальный размер сохраняемых в поле данных.
Для поля с типом данных Текстовый задается размер от 1 до 255 знаком (по умолчанию — 50 знаков).
Для поля с типом данных Счетчик можно задать:
а) Длинное целое— 4 байта:
б) Код репликации— 16 байт.
Для поля с типом данных Числовой можно задать:
в) Байт (для целых чисел от 0 до 255, длина поля 1 байт);
г) Целое (для целых чисел от -32 768 до +32 767, занимает 2 байта);
д) Длинное целое (для целых чисел от -2 147 483 648 до +2 147 483 647, занимает 4 байта);
е) Дробные с плавающей точкой 4 байта (для чисел от —3,4хЮ38 до +3,4х1038 с точностью до 7 знаков);
ж) Дробные с плавающей точкой 8 байт (для чисел от -1,797хЮ308 до +1,797хЮ308 с точностью до 15 знаков);
з) Действительное (для целых чисел от -1038-1 до 1038-1 при работе с проектами, которые хранятся в файлах типа1 ADP, и от -1028-1 до 1028-1 — для файлов типа MDB, с точностью до 28 знаков, занимает 12 байт);
и) Код репликации. Глобальный уникальный идентификатор, занимает 16 байт. Поля такого типа используются Access для создания системных уникальных идентификаторов реплик, наборов реплик, таблиц, записей и других объектов при репликации баз данных.
Рекомендуется задавать минимально допустимый размер поля, который понадобится для сохраняемых значений, т. к. сохранение таких полей требует меньше памяти, и обработка данных меньшего размера выполняется быстрее.
2. Формат поля является форматом отображения заданного типа данных и задает правила представления данных при выводе их на экран или печать.
В Access определены встроенные стандартные форматы отображения для полей с типами данных Числовой, Дата/время, Логический и Денежный. Ряд этих форматов совпадает с настройкой национальных форматов, определяемых в окне Язык и стандарты панели управления Microsoft Windows. Пользователь может создать собственный формат для всех типов данных, кроме OLE, с помощью символов форматирования.
Для указания конкретного формата отображения необходимо выбрать и раскрывающемся списке одно из значений свойства Формат поля. Формат поля используется для отображения данных в режиме таблицы, а также применяется в форме или отчете при отображении этих нолей.
3. Число десятичных знаков задает для числового и денежного типов данных число знаков после запятой. Можно задать число от 0 до 15. По умолчанию (значение Авто) это число определяется установкой в свойстве Формат поля. Следует иметь в виду, что установка этого свойства не действует, если свойство Формат поля не задано или если выбрано значение Основной. Свойство Число десятичных знаков влияет только на количество отображаемых на экране десятичных знаков и не влияет на количество сохраняемых знаков. Для изменения числа сохраняемых знаков необходимо изменить свойство Размер поля.
4. Подпись поля задает текст, который выводится в таблицах, формах, отчетах.
5. Значение по умолчанию определяет текст или выражение, которое автоматически вводится в поле при создании новой записи. Например, если задано значение =now (), то в поле будет введена текущая дата и время. При добавлении записи в таблицу можно оставить значение, введенное по умолчанию, или ввести другое. Свойство Значение по умолчанию используется только при создании новой записи. Изменение значения свойства не влияет на существующие записи. Максимальная длина значения свойства составляет 255 знаков. Данное свойство не определено для полей с типом данных Счетчик или Поле объекта OLE.
6. Условие на значение позволяет осуществлять контроль ввода, задает ограничения на вводимые значения, запрещает ввод при нарушении условий и выводит текст, заданный свойством Сообщение об ошибке.
7. Сообщение об ошибке задает текст сообщения, выводимый на экран при нарушении ограничений, заданных свойством Условие на значение.
Раздел 2: Создание ключевых полей
Как уже было упомянуто в предыдущем разделе, ключевые поля в базе данных Access позволяют идентифицировать уникальные записи в таблице. В этом разделе мы рассмотрим, как создать ключевые поля в Access.
Шаг 1: Открыть таблицу
Перейдите к разделу «Таблицы» в базе данных Access и выберите таблицу, для которой нужно создать ключевое поле. Дважды щелкните на таблице, чтобы открыть ее.
Шаг 4: Установить опцию ключевого поля
В окне свойств поля найдите раздел «Ссылочная целостность» и установите значение «Да» возле опции «Первичный ключ».
Шаг 5: Сохранить изменения
После установки опции ключевого поля нажмите кнопку «ОК», чтобы сохранить изменения. Access теперь будет считать выбранное поле ключевым, и это будет отмечено специальным значком в заголовке столбца.
Повторите шаги с 2 по 5 для каждого дополнительного поля, которое должно быть ключевым в таблице
Обратите внимание, что каждое ключевое поле должно быть уникальным в пределах таблицы. Если таблица уже содержит записи, содержащие одинаковые значения ключевых полей, вам будет предложено удалить или обновить эти записи, чтобы установить ссылочную целостность
Создаем запросы
Классическая выборка
Запрос выборки позволяет производить отбор данных в БД по заранее созданным условиям. В нашем проекте будет создана выборка, позволяющая найти товар по его наименованиям. Работу будем производить в БД «Продукция».
Создание сущности
Запрос на создание сущности в Майкрософт Аксесс производит выборку из взаимосвязанных таблиц и других ранее созданных запросов. В отличии от первого варианта результат сохранится в новой постоянной таблице.
Процесс выглядит следующим образом:
На добавление, удаление, редактирование
Данный вид запросов подразумевает под собой создание и выполнение какого-либо действия, в результате которого изменятся параметры в таблице.
Создаем запрос следующим образом:
Запрос на добавление
:
На редактирование:
PPT — презентация Microsoft Access PowerPoint, скачать бесплатно
Microsoft Access Практическое введение Глава 1
Что такое Microsoft Access? • Приложение для Windows.
• Среда разработки приложений. • Организатор данных. • Сборник информационных инструментов. • Система управления реляционными базами данных. • Все вышеперечисленное.
Что такое база данных? • База данных — это набор информации, организованный для определенной цели. Примером может служить информация о коллекции фильмов. Телефонная книга — другой пример. В определенный день вы можете использовать множество объектов, которые можно считать базами данных.
Что такое база данных? (продолжение) • В Access мы работаем с так называемой реляционной базой данных. Доступ — это СУБД. Термин «реляционная» означает, что каждая таблица в базе данных содержит информацию об одном предмете и только об этом предмете. Однако каждая таблица обычно связана с одной или несколькими другими таблицами. Примером может служить таблица «Клиенты», связанная с таблицей «Заказы». Подробнее об этом позже.
Типы баз данных Плоский файл: как электронная таблица Плоские файлы ограничены в использовании.
Используются для менее сложных баз данных. Пустое место на диске по мере увеличения сложности. 01.12.05 229901 B4500 2 2 доллара США.33 Mendenhall Steel UPS Blue 12.01.05 229901 C2134 4 3,45 $ Mendenhall Steel UPS Blue 12.01.05 229901 Z2344 6 342,33 $ 3 Mendenhall Steel UPS Blue 12.01.05 229901 M4098 8 12.98 $ Mendenhall Steel UPS Blue 12.01.05 229901 Q1243 10 132,33 долл. США Mendenhall Steel UPS Blue 12.01.05 229901 P0918 12 134,95 долл. США Gerrity Lumber FedEx 12.01.05 229902 P0918 1 134 долл. США.95 Gerrity Lumber FedEx 12.01.05 229902 M4098 2 12.98 $ Gerrity Lumber FedEx 12.01.05 229902 C2134 3 3.45 $
Типы баз данных (продолжение) Relational: содержат информацию, охватывающую несколько тем или тематических таблиц. Используйте общую информацию, чтобы связать тематические таблицы. Используйте меньше места на диске. Проектировать их сложнее, чем системы с плоскими файлами. Более эффективны с точки зрения извлечения данных.
Доступ как РСУБД • С РСУБД у вас есть полный контроль над тем, как вы определяете, работаете с данными и делитесь ими.
• Предоставляются три типа возможностей; определение данных, манипулирование данными и управление данными. • Вы можете использовать базу данных Access либо как базу данных рабочего стола, обслуживающую одного пользователя, либо как базу данных совместного использования таблиц в сети, обслуживающей множество пользователей. • Access также полезен как интерфейс к базе данных клиент / сервер, такой как SQL Server или Oracle. • Возможности безграничны!
Определение данных • Вы определяете, какой тип данных хранится в вашей базе данных.Например, текст, числа или их комбинация. • Вы определяете, как связаны данные. • Вы также можете определить, как данные форматируются и как они проверяются. • Вы также определяете желаемый уровень целостности данных.
Обработка данных • В Access вы можете работать с данными разными способами. • Вы можете выбрать, какие поля данных вам нужны. • Вы можете сортировать данные и фильтровать их.
• Вы можете работать с несколькими таблицами, используя определенные вами отношения. • Вы можете суммировать данные, обновлять и удалять данные, а также копировать их в другую базу данных, если хотите.
Функция управления данными позволяет вам определять, кто может читать, обновлять и вставлять данные. Эта функция также позволяет вам определять, как данные могут совместно использоваться и обновляться несколькими пользователями одновременно. Настоящая СУБД разработана таким образом, что если пользователи обмениваются данными, никакие два пользователя не могут обновлять одну и ту же запись одновременно. Еще одна особенность — возможность создавать транзакции, которые представляют собой многоэтапные процессы, в которых все шаги либо завершаются успешно, либо терпят неудачу. Это обеспечивает целостность данных.Контроль данных
Когда уместен доступ? Как автономная система Полнофункциональная настольная система баз данных для одного пользователя или для нескольких не одновременно работающих пользователей на автономном компьютере.
Достоинства и недостатки Microsoft Access
СУБД Access отличается простотой в изучении и применении. Данный системный продукт может с легкостью освоить любой пользователь, даже имеющий невысокий уровень квалификации. Программа включает широкий спектр средств, что позволяет создавать отчеты разной сложности и масштаба, которые формируются на основании табличных форматов. Обычно, Access используют для создания личных баз данных, которые не предназначены для коммерческого распространения.
- Реляционная база данных является комплексом взаимосвязанных двухмерных таблиц.
- СУБД позволяет создавать и обрабатывать локальные базы данных, а также применяется, как клиентское приложение, обеспечивающее доступ к удаленным и распределенным базам данных коллективного использования с SQL Server или Oracle.
- Базы данных, формы, запросы и отчеты формируются и используются по единой технологии.
- Опция совместной работы базы данных со сторонними источниками информации такими, как базы данных с СУБД Access и других типов СУБД, электронная таблица Excel, текстовые файлы.
- Возможность использования средств разработки пользовательских приложений для работы с другими СУБД, включая MS SQL Server, Oracle, в роли интегрированной среды разработки приложений, использующих для хранения данных базы с различными СУБД.
- Access включает разные мастера, конструкторы, построители.
- Полностью русифицированный интерфейс, в том числе перевод на русский язык имен полей и свойств, что упрощает работу с программой.
- Отсутствует опция создания приложения в виде исполняемого файла и одновременной непосредственной работы с несколькими базами с помощью окна базы.
- Собственный язык программирования не предусмотрен, используется Visual Basic.
- Возможность использования запроса наравне с таблицами, как источника записей для отчетов, форм и запросов.
- Базы данных, включая все объекты в виде таблиц, запросов, форм, отчетов, макросов, модулей, хранятся в одном файле.
Преимущества:
- простота;
- гибкость;
- русификация;
- большой выбор мастеров, конструкторов;
- надежность в применении.
Недостатки:
- низкоэффективная защита;
- слабые средства восстановления данных;
- ограничения по объему данных;
- отсутствует собственный язык программирования;
- длительное время обработки больших объемов информации.
Существуют некоторые ограничения при работе с Access:
- размер файла с расширением mdb составляет 2 Гб без учета объема системных объектов;
- фактический размер ограничен свободным дисковым пространством, по причине возможного наличия в базе данных присоединенных таблиц;
- количество объектов в базе данных — 32768;
- число пользователей, которые могут работать в одно время — 255;
- максимально допустимый размер таблицы — 2 Гбайт;
- максимально допустимое число полей в таблице — 255;
- максимально возможное число индексов в таблице — 32;
- максимально возможное количество символов в записи без учета поля Memo и полей объектов OLE — 2000;
- максимальное количество символов в поле Memo — 65 535 при вводе данных с помощью пользовательского интерфейса и 1 Гбайт при программном вводе данных;
- максимальный размер объекта OLE — 1 Гбайт;
- максимальное число таблиц в запросе — 32.
Примечание
Access целесообразно использовать при разработке несложных приложений и персональных баз данных, которые характеризуются ограниченным объемом сведений в несколько сотен тысяч записей. Подобные системы подходят для применения на небольших предприятиях.
Главная и подчиненная форма в access
В Access отношение представляет собой связь между совпадающими полями двух таблиц, которая позволяет установить соответствие между записями этих таблиц. Так, например, можно связать отношением таблицы Типы и Товары, воспользовавшись общим полем КодТипа.
Каждый тип включает несколько товаров, но каждый товар может относиться только к одному типу. Это пример наиболее распространенного типа отношений, называемого один-ко-многим (то есть, одной записи в таблице Типы соответствует несколько записей в таблице Товары).
При создании форм и запросов Access распознает отношения между базисными объектами, но не всегда правильно. Поэтому лучше установить отношения между объектами вручную, тем более что это не представляет проблемы.
В этом упражнении вы установите отношение между таблицами Типы и Товары, а затем добавите к форме Типы подчиненную форму. Подчиненная форма предназначена для просмотра товаров, принадлежащих типу, отображающегося в главной форме. В качестве рабочей будет использоваться папка Office XP SBS\Access\Chap11\Subform. Выполните следующие шаги.
Другие типы отношений
Помимо отношения один-ко-многим, существуют отношения один-к-одному и многие-ко-многим, но они встречаются реже.
В отношении один-к-одному каждой записи в одной таблице соответствует только одна запись в другой таблице. Этот тип отношений применяется в том случае, если таблица содержит много полей. Для удобства ее можно разбить на две связанные таблицы, поместив редко используемые поля в отдельную таблицу.
Отношение многие-ко-многим, в сущности, представляет собой два отношения один- ко-многим, которые реализуются через третью таблицу. Например, в базе данных GardenCo имеются таблицы Товары, Заказы и Детали заказа. Таблица Товары содержит по одной записи для каждого товара. Запись таблицы Заказы описывает один заказ, не включая при этом перечня заказанных товаров. Эти данные хранятся в таблице Детали заказа. То есть, одной записи в таблице Заказы соответствует несколько записей в таблице Детали заказа. Очевидно, что между таблицами Заказы и Детали заказа существует отношение один-ко-многим. Но такое же отношение связывает таблицы Товары и Детали заказа. Таблица Детали заказа является связующей в отношении многие-ко-многим между таблицами Товары и Заказы. Проще говоря, один и тот же товар может содержаться в нескольких заказах, а каждый заказ может включать несколько товаров.
На схеме данных появится линия, отображающая отношение один-ко-многим между полями КодТипа в обеих таблицах, как показано ниже.
Создание главной и подчиненной форм с помощью мастера
Если при создании формы известно, что она должна содержать подчиненную, можно поручить эту работу мастеру, выполнив следующие шаги.
Теперь можно доработать форму в соответствии с вашими нуждами так же, как это делалось в предыдущем упражнении.