МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ Государственное образовательное учреждение высшего профессионального образ...
21 downloads
199 Views
782KB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ Государственное образовательное учреждение высшего профессионального образования«Оренбургский государственный университет» Кафедра систем автоматизации производства
А.М. ЧЕРНОУСОВА, А.В. ТРИБУНСКИЙ
РАЗРАБОТКА ПРИЛОЖЕНИЙ В MS ACCESS МЕТОДИЧЕСКИЕ УКАЗАНИЯ К ЛАБОРАТОРНЫМ И САМОСТОЯТЕЛЬНЫМ РАБОТАМ
Рекомендовано к изданию Редакционно-издательским советом государственного образовательного учреждения высшего профессионального образования«Оренбургский государственный университет»
Оренбург 2003
ББК 32.97 Ч49 УДК 681.3
Рецензент кандидат технических наук, доцент Н.Ю.Глинская
Ч49
Черноусова А.М., Трибунский А.В. Разработка приложений в MS ACCESS: Методические указания к лабораторным и самостоятельным работам. - Оренбург: ГОУ ОГУ, 2003. - 23с.
Методические указания предназначены для выполнения лабораторных и самостоятельных работ по дисциплине «Базы данных» для студентов всех форм обучения специальностей 220300 и 210200. Могут быть использованы студентами других специальностей и аспирантами при создании приложений в СУБД MS ACCESS.
ББК 32.97 © Черноусова А.М., Трибунский А.В., 2003 © ГОУ ОГУ, 2003
2
1 Цель работы Целью работы является создание пользовательского приложения по работе с базой данных в СУБД MS ACCESS.
2 Общие положения 2.1 Access – средство быстрой разработки приложений Наиболее распространенным типом модели представления данных в настоящее время является реляционный (relational) тип. Название «реляционный» объясняется тем, что каждая запись в базе данных содержит информацию, относящуюся (related) к одному конкретному объекту. Кроме того, с информацией, принадлежащей разным объектам, можно работать как с единым целым, основанным на значениях связанных между собой (related) данных. В реляционных СУБД все обрабатываемые данные представляются в виде таблиц. Microsoft Access – это функционально полная реляционная СУБД. Основные функции: - определение данных (Data definition), то есть определение структуры и типа данных, а также указание, как эти данные связаны между собой; - обработка данных (Data manipulation), включающая поиск, фильтрацию, сортировку, вычисление; обработка предусматривает также объединение данных с другой связанной с ними информацией; - управление данными (Data control), то есть указание, кому разрешено пользоваться данными и актуализировать базу данных, а также определение правил коллективного пользования данными. Microsoft Access предоставляет максимальную свободу в задании типа данных – текст, числовые данные, даты, время, денежные значения, рисунки, звук, документы, электронные таблицы. Имеется возможность задавать форматы хранения (длина строки, точность представления чисел и даты/времени) и представления этих данных при выводе на экран или печать. Microsoft Access является современным приложением Windows и позволяет использовать все возможности DDE (Dynamic Data Exchange) – динамический обмен данными и OLE (Object Linking and Embedding) – связь и внедрение объектов. DDE обеспечивает обмен данными между Access и любым другим приложением Windows. OLE устанавливает связь с объектами другого приложения или внедряет какой-либо объект в базу данных Access; в качестве объектов могут выступать картинки, диаграммы, электронные таблицы или документы из других приложений Windows. Access может работать с большим числом разнообразных форматов данных, позволяя осуществлять импорт и экспорт данных из файлов текстовых редакторов и электронных таблиц. Access способна непосредственно обрабатывать файлы Paradox, dBase III, dBase IV, FoxPro и другие. Microsoft Access относится к средствам быстрой разработки приложений (RAD – Rapid Application Development). Можно выделить следующие отличительные черты таких средств разработки: - наличие объектно-ориентированного языка программирования, позво3
ляющего эффективно использовать модульный принцип составления программ; - визуальные средства разработки, представляющие возможность заменить написание программного кода рисованием пользовательского интерфейса и заданием необходимой функциональности диалоговыми средствами; - поддержка стандартных протоколов обмена данными между приложениями, позволяющая разрабатывать многоуровневые приложения, не зависящие от источника данных. Наряду с созданием обычных mdb-файлов приложений в Access имеется возможность создавать mde-файлы приложений, в которых хранятся базы данных, предназначенные «только для исполнения». Отличительной чертой этих файлов является то, что в соответствующем приложении нельзя использовать Конструкторы для модификации приложения, а также компилированы все модули. Это позволило защитить приложение от исправления и исследования, а также уменьшить размер файла базы данных. Чтобы создать копию приложения с базой данных, предназначенную только для исполнения, нужно выполнить команду Сервис|Служебные команды|Создать MDE-файл. Появится диалоговое окно, в котором вводится имя исходной базы данных , затем необходимо нажать кнопку Создать MDE. В очередном диалоговом окне указывается имя новой базы данных и папка ее размещения. После нажатия кнопки Сохранить в окне Access откомпилирует исходную базу и сохранит ее в новом файле с расширением mde, после чего выполнит сжатие файла. Если открыть mde-файл некоторой базы данных, то обнаружится, что в окне базы данных на вкладках Формы и Отчеты станут недоступными ( изменят свой цвет на серый) кнопки Конструктор и Создать, а на вкладке Модули - все три кнопки Запуск, Конструктор и Создать. Это означает, что нельзя изменить или создавать формы, отчеты и модули. Вместе с тем по-прежнему останутся доступными все средства просмотра, создания и модификации таблиц, запросов и макросов. 2.2 Создание таблиц Создание таблиц базы данных осуществляется при нажатой закладке Таблицы. Если щелкнуть на кнопке Создать, Access отображает диалоговое окно Новая таблица. В лабораторной работе рекомендуется создавать таблицы в режиме Конструктор. При определении полей таблицы для каждого поля необходимо ввести имя, тип данных и краткое описание. Имя поля задается в столбце Поле, курсор должен быть расположен в первой позиции столбца; в имени поля не рекомендуется использовать пробелы. Переход к следующему столбцу – Тип данных – осуществляется клавишей Tab . При этом справа в столбце Тип данных обозначается кнопка со стрелкой вниз, наличие которой означает, что существует список выбора. «Щелчок» по данной кнопке открывает список возможных типов данных. Требуемое значение тип данных можно либо выбрать из списка, либо ввести непосредственно с клавиатуры, не прибегая к помощи списка. Типы данных приведены в таблице 1. 4
После выбора типа данных Access выведет свойства поля в левом нижнем углу окна таблицы в дополнительном окне Свойства поля. Это позволит установить свойства поля, набор которых различен в зависимости от выбранного типа данных, причем некоторые из них устанавливаются по умолчанию. Столбец Описание содержит пояснительный текст для каждого из полей. Таблица 1 – Типы данных, поддерживаемые в MS Access Тип данных 1 Текстовый 2 Memo
3 Числовой
4 Денежный 5 Дата/время
6 Счетчик
7 Логический 8 Объект OLE
Использование Алфавитно-цифровые данные Алфавитно-цифровые данные – предложения, абзацы, тексты Числовые данные
Данные о денежных суммах Даты и время
Уникальное целое, генерируемое Access при создании каждой новой записи Логические данные Картинки, диаграммы и другие объекты из приложений Windows
Размер до 255 байтов до 64000 байтов
Примечание Используется обычно для символьных данных Используется только в тех случаях, когда размер текста > 255 байтов 1, 2, 4 или 8 Точность значений данных забайтов висит от значения свойства Размер поля 8 байтов Используется для хранения данных о денежных суммах 8 байтов Используется для хранения календарных дат или значений времени 4 байта Разновидность числового типа, таблица не может содержать более одного поля данного типа 1 бит
Используется для хранения значений Истина или Ложь
до 1 гигабайта
Каждая таблица в реляционной БД должна иметь первичный ключ. Для выбора первого поля первичного ключа таблицы следует «щелкнуть» по области маркировки, расположенной слева от имени поля в окне таблицы в режиме конструктора. При необходимости включить несколько полей в первичный ключ следует нажать клавишу Ctrl и, удерживая ее нажатой, «щелкнуть» по области маркировки необходимых полей. После того как помечены все необходимые поля, требуется «щелкнуть» по кнопке Определить ключ, расположенной на панели инструментов, или выполнить команду Правка/Определить ключ. В подтверждение того, что ключ задан, Access выведет в области маркировки, слева от каждого указанного поля, символ ключа. Созданное определение таблицы (структуру) необходимо сохранить. С этой целью необходимо выполнить команду Сохранить в меню Файл (Файл/Сохранить) или команду Сохранить как ( Файл/Сохранить как). В появившемся в результате выполнения команды диалоговом окне Сохранение следу5
ет указать имя таблицы и «щелкнуть» по кнопке ОК. После описания структуры таблицы в режиме Конструктора можно осуществлять ввод данных. Если в таблице первое поле – Код, которое MS Access создал в качестве ключевого поля или оно было создано с типом данных Счетчик, то не нужно вводить в это поле информацию. В поле объекта OLE Access дает возможность хранить и редактировать документы MS Word, электронные таблицы MS Excel, слайды презентаций MS PowerPoint, звуковые файлы (.wav), видеофайлы (.avi) или рисунки, созданные в приложениях Paint или Draw. Основными операциями над значениями этого поля являются следующие: просмотр, модификация, создание и удаление.
Рисунок 1 – Диалоговое окно вставки OLE-объектов В лабораторной работе поле Карта страны является полем объекта OLE. Создать его содержимое удобно сделать следующим образом: сделать это поле текущим, затем из меню Access выполнить команду Вставка|Объект. Появляется диалоговое окно (рисунок 1). В нем предлагается выбрать тип объекта, а также способ его определения: создать объект с помощью соответствующей программы или вставить его готовым из файла. Независимо от способа определения объекта, существуют два варианта включения объекта в поле записи базы (задается с помощью флажка Связь): - путем внедрения исходного объекта в базу данных; - путем связывания (флажок Связь включают), когда устанавливается связь между отдельно хранящимся файлом объекта и записью базы данных. 6
Включаемые объекты могут отображаться при просмотре, либо отображаться в виде значков или двойным щелчком мыши разворачиваться полностью. Для модификации изображений, хранящихся в поле OLE объекта необходимо выбрать нужное поле и дважды щелкнуть по нему кнопкой мыши. В результате будет вызван подходящий графический редактор для редактирования изображения. После определения нескольких таблиц необходимо сообщить Access, как данные таблицы связаны друг с другом, поскольку эти связи Access будет использовать в запросах, формах и отчетах. Для определения связей следует вернуться в окно БД, закрыв текущее окно таблицы, или «щелкнуть» по окну базы данных для его активизации. Далее необходимо выполнить команду Схема данных меню Правка ( Правка / Схема данных). В результате откроется диалоговое окно Схема данных, а затем – диалоговое окно Добавление таблицы, в котором следует: - выбрать одну таблицу и «щелкнуть» по кнопке Добавить; - выбрать вторую таблицу, с которой устанавливается связь, и «щелкнуть» по кнопке Добавить; - закрыть диалоговое окно Добавление таблицы, «щелкнув» по кнопке Закрыть; в результате чего вновь появится окно Схема данных с обозначением таблиц, между которыми устанавливается связь. При установлении связи необходимо помнить, что для второй (подчиненной) таблицы должно быть определено поле вторичного ключа, тип данных и размер которого совпадают с полем первичного ключа первой (главной) таблицы. Для установления непосредственной связи между двумя выбранными таблицами следует «щелкнуть» по полю первичного ключа первой таблицы и «перетащить» его на соответствующий ему ключ второй таблицы. В результате откроется диалоговое окно Связи, в котором следует «щелкнуть» по флажку Обеспечение связи и затем «щелкнуть» по кнопке Создать. Отношение между таблицами будет представлено в появившемся окне Схема данных в виде линии, нарисованной между двумя таблицами. Для удаления связи следует «щелкнуть» по линии и нажать клавишу Del . Для редактирования связи следует дважды «щелкнуть» по соответствующей линии связи, чтобы открыть диалоговое окно Связи. Для завершения определения связи достаточно закрыть окно Схема данных и подтвердить нажатием клавиши Да сохранение внесенных изменений. В качестве примера создания связи между таблицами рассмотрим создание схемы данных для таблиц «Страны», «Религия» и «Строй». Для этого необходимо выполнить следующие действия: выполнить команду Схема данных из меню Сервис; в диалоговом окне добавления таблиц добавить в схему все три таблицы; на поле Код_религии таблицы «Религия» нажать левую клавишу мыши и, удерживая, ее перетащить на поле Религия таблицы «Страны»; в появившемся диалоговом окне необходимо установить нужную связь: флажок напротив опции обеспечение целостности данных означает, что перед тем как занести данные в подчиненную таблицу, программа будет прове7
рять их на соответствие главной. Таблица «Страны» является подчиненной для таблиц «Религия» и «Строй». Флажок напротив опции каскадное обновление связанных полей означает, что изменения в главной таблице автоматически будут влиять на подчиненную. Флажок напротив опции каскадное удаление связанных полей означает, что поля удаленные в главной таблице будут удалены и в подчиненной. установить все эти флажки аналогичную операцию проделать с таблицами «Страны» и «Строй»; если связь не устанавливается, необходимо проверить типы данных связываемых полей; закрыть схему с сохранением. На рисунке 2 приведена созданная схема данных для таблиц «Страны», «Религия» и «Строй». Рисунок 2 - Схема данных для таблиц «Страны», «Религия» и «Строй» 2.3 Создание запросов
Таблицы только хранят данные, но необходимо иметь возможность выбрать заданные данные из нескольких таблиц. Именно для этого служат запросы на выборку.
Запрос – это объект, позволяющий пользователю получить нужные данные из одной или несколько таблиц. Можно создавать запросы на выборку, обновление, удаление или добавление данных. В запросах на выборку данные могут: отбираться по многим критериям; сортироваться; с ними могут производиться вычислительные операции. Запрос это временная таблица. Это значит, что данные в них не хранятся постоянно, а только временно вызываются из таблиц, по заранее заданному шаблону, в момент активизации запроса. Таким образом, в базе данных постоянно хранится только шаблоны вызова данных (временные таблицы удаляются после закрытия запроса), а сама информация не дублируется. Во время создания, в запросе необходимо оставить ссылки на таблицы откуда будут вызываться данные (добавление таблиц в запрос). Если нужная табли8
ца не добавлена, то перед открытием запроса, требуемые данные будут запрашиваться в диалоге. В бланк запросов помещаются поля, включаемые в набор записей, указывается порядок сортировки, необходимость вывода на экран и содержания условия отбора. Обычно Access выводит строки в наборе записей запроса в том порядке, в каком они выбираются из БД. Изменить последовательность вывода данных в наборе записей можно, щелкнув в строке Сортировка на ячейке поля, по значениям которого надо сортировать записи, и выбрав порядок сортировки По возрастанию или По убыванию. При отборе записей с конкретным значением поля необходимо ввести его в строке Условие отбора для этого поля. Текстовое значение, используемое в качестве условия отбора, должно быть заключено в кавычки. Для задания выражения условия отбора можно использовать знаки меньше (), больше или равны (>=), меньше или равны (