Logo GenDocs.ru

Поиск по сайту:  

Загрузка...

Диго С.М - файл Создание БД в СУБД.doc


Диго С.М
скачать (96.7 kb.)

Доступные файлы (1):

Создание БД в СУБД.doc625kb.19.03.2010 11:18скачать

содержание

Создание БД в СУБД.doc

  1   2   3   4   5
МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

Московский государственный университет экономики,

статистики и информатики

Московский государственный институт эконометрики,

информатики, финансов и права

Диго С.М.

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

в среде СУБД Access’2000

Учебное пособие по курсу

Базы данных”

Москва, 2001



СОДЕРЖАНИЕ


Предисловие...................................................................................................4

1. Создание БД в Microsoft Access..............................................................5

1.1 Создание новой базы данных...............................................................5

1.2 Создание таблиц....................................................................................7

1.2.1 Описание структуры таблицы и других ее характеристик.....8

1.2.2 Определение ключа таблицы...................................................18

1.2.3. Свойства полей......................................................................21

1.2.4. Сохранение описания таблицы............................................24

1.2.5. Создание таблиц для контрольного примера.....................25

1.2.6. Изменение структуры таблиц..............................................26

1.2.7. Другие способы создания таблиц........................................27

1.3. Связывание таблиц........................................................................29

1.4. Задание ограничений целостности..............................................31

1.5. Ввод данных в базу данных.........................................................35

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

2. Реализация запросов...............................................................................38

2.1 Создание запросов...............................................................................38

2.1.1 Добавление таблиц в запрос....................................................38

2.1.2 Удаление таблицы из запроса..................................................40

2.1.3 Включение полей в запрос.......................................................40

2.1.4 Задание условий отбора............................................................42

2.1.5 Управление выводом повторяющихся строк.........................43

2.1.6 Просмотр результатов выполнения запроса..........................44

2.1.7 Сохранение описания запроса.................................................45

2.2 Виды запросов. Особенности создания............................................45

2.2.1 Простые запросы.......................................................................45

2.2.2 Сложные запросы......................................................................48

2.2.3 Запросы к связанным таблицам...............................................49

2.2.4 Запросы с подгруппировкой....................................................55

2.2.5 Запросы, содержащие вычисляемые поля..............................57

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

2.2.7 Запросы с параметрами............................................................64

2.2.8 Корректирующие запросы.......................................................66

2.2.9 Дополнительные возможности................................................72

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

3. Создание экранных форм......................................................................79

3.1 Выбор способа создания формы........................................................79

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

3.3 Создание многотабличной формы....................................................83

3.4 Корректировка формы в режиме «Конструктора»..........................88

2


3.4.1 Изменения, связанные с уже включенными в форму элементами управления............................................................89

3.4.2 Включение новых элементов в форму....................................89

3.4.3 Изменение типа элемента управления....................................90

3.4.4 Создание форм, состоящих из нескольких страниц..............94

3.4.5 Последовательность обхода полей..........................................96

3.4.6 Свойства формы........................................................................98

3.5 Возможные случаи возникновения ошибок.....................................99

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

4. Создание отчетов в Аccess...................................................................101

4.1 Создание отчетов. Выбор способ создания....................................101

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

4.3 Создание сложных отчетов..............................................................109

4.4 Сохранение содержания документа................................................111

4.5 Корректировка формы отчета. Работа в режиме «Конструктора».......................................................................................111

4.5.1 Области отчета........................................................................112

4.5.2 Элементы отчета.....................................................................114

4.5.3 Свойства...................................................................................116

4.5.4 Вычисления в отчете...............................................................120

4.5.5 Группировка............................................................................124

4.5.6 Задание номеров страниц.......................................................126

4.5.7 Использование графических элементов...............................126

4.5.8 Параметрические отчеты........................................................126

4.5.9 Определение конца страницы................................................129

4.6 Разновидности отчетов.....................................................................131

4.6.1 Создание отчета анкетной формы.........................................131

4.6.2 Создание отчетов в виде «этикеток».....................................133

4.7 Совместная работа с другими приложениями MS Office.............136

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

Литература..................................................................................................139

Основная..................................................................................................139

Дополнительная.......................................................................................139

3

Предисловие

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

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

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

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

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

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

4

  1. ^ 1. Создание БД в Microsoft Access


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

  1. ^ 1.1 Создание новой базы данных


Если вы создаете новую базу данных, то надо после запуска Access выбрать позиции меню Файл/Создать базу данных и в появившемся окне “Создание” выбрать позицию “База данных” (рис. 1.1)

Рис. 1.1. Создание новой базы данных (экран 1)

В появившемся окне “Файл новой базы данных” (рис. 1.2) надо задать имя создаваемого файла БД и определить место, где он будет храниться, после чего, нажать кнопку “Создать”. В нашем примере для файла базы данных задано имя «Демонстрационная» и он хранится в папке «Базы данных»

5

Рис. 1.2. Создание новой базы данных (экран 2 - задание имени базы дан-ных)

После выполнения этих шагов появится экран “[название]:база данных” (рис. 1.3).

Рис. 1.3. Начальный вид окна базы данных

6

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

  1. ^ 1.2 Создание таблиц


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

Рис. 1.4. Выбор способа создания таблицы

Создать таблицу можно в разных режимах: режиме таблицы, кон-структора, мастера таблиц, импорта таблиц и связи с таблицами. Начнем рассмотрение возможностей создания таблиц с режима конструктора, как наиболее часто используемого. Для этого в появившемся окне выбе-рите режим создания нового объекта – “Конструктор”.

После чего появится окно для описания структуры таблицы и дру-гих ее характеристик (рис.1.5).

7

Рис. 1.5. Вид экрана при описании таблицы

  1. ^ 1.2.1 Описание структуры таблицы и других ее характеристик


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

В Microsoft Access действуют следующие ограничения на имена полей:

  1. • имя должно содержать не более 64 символов;

  2. • имя может включать любую комбинацию букв, цифр, про-белов и специальных символов за исключением точки (.), восклицательного знака (!), надстрочного символа (`) и прямых скобок ([ ]);

  3. • имя не должно начинаться с символа пробела;

  4. • имя не должно включать управляющие символы (с кодами ASCII от 0 до 31).


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

8

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

При задании имен не допускайте их совпадения с зарезервирован-ными словами. Например, не следует давать полю имя Count, Name и т. п.

Имя поля должно быть уникальным в пределах таблицы. И хотя система не запрещает использование одинаковых имен полей в разных таблицах, избегайте использования одинаковых имен для обозначения разных по смыслу атрибутов. Имя должно быть понятно не только в контексте данной конкретной таблицы. Так, например, если в таблице “СОТРУДНИК” есть поле “Код”, и такое же поле есть в таблице “КА-ФЕДРА”, то в первом случае это будет код сотрудника, а во втором – код кафедры. Многие системы (и Access в том числе) автоматически связывают таблицы по полям, которые имеют одинаковые имя, тип и длину. Если имена даны непродуманно, то могут либо возникнуть не-правильные связи, либо процесс задания связей будет несколько слож-нее, чем при правильном задании имен.

После задания имени надо выбрать тип поля. Если щелкнуть мышкой по свободной ячейке графы “Тип поля”, то высветится список допустимых типов полей (см. Рис. 1.5), из которого и следует выбрать подходящий для описываемого поля тип. Имя и тип поля должны зада-ваться обязательно. Графа “Описание” может не заполняться. Эта графа используется в целях документирования проекта.

Допустимые типы полей в Access2000 и их краткая характеристи-ка приведены в таблице 1.1.

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

9

Допустимые типы полей в Access2000

Таблица 1.1

^ Тип данных

Содержимое поля

Размер

Текстовый

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

Максимальное число символов – 255.

Поле МЕМО

Длинный текст или комбинация текста и чисел.

До 65535 симво-лов.

Числовой

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

1, 2, 4 или 8 байт

Дата/время

Даты и время, относящиеся к го-дам с 100 по 9999 включительно.

8 байт.

Денежный

Специальный формат для пред-ставления числовых данных. Точность – до 15 знаков в целой и до 4 знаков в дробной части.

8 байт

Счетчик

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

4 байт

Логический

Поля, которые могут содержать одно из двух возможных значе-ний (True/False, Да/Нет).

1 бит

Поле объекта OLE

Объект, связанный или внедрен-ный в таблицу Microsoft Access.

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

Гиперссылка

Строка, состоящая из букв и цифр, и представляющая адрес гиперссылки. Адрес гиперссылки может состоять максимум из трех частей:текст – текст, выво-димый в поле или в элементе управления;адрес– путь к файлу (в формате пути UNC) или стра-нице (адрес URL) дополнитель-ный адрес – смещение внутри файла или страницы.

Каждая из трех частей в типе Ги-перссылка может содержать до 2048 символов.


В списке допустимых типов полей (см. Рис. 1.5) имеется строка “^ Мастер подстановок”. При его использовании можно создать поле, содержание которого формируется путем выбора значений из списка, содержащего набор постоянных значений или значений из другой таб-лицы/запроса. Если источником для подстановки выбран столбец другой

10

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

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

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

Рис. 1.6. Состав полей таблицы "СОТРУДНИК"

Введите описания всех полей.

Обратим внимание на поле «Должность». Для выбранной катего-рии сотрудников имеется всего четыре возможные должности: асси-стент, старший преподаватель, доцент и профессор. Хорошо было бы заменить ввод этих значений выбором их из списка. В ранних версиях Access задавать домен (либо путем прямого ввода списка значений, либо путем связи с файлом подстановки) можно было только при создании запроса или экранной формы. В последних версиях (начиная с Access’7) стало возможным задать его и при описании таблицы.

11

Используем “^ Мастер подстановок” при определении типа данных поля “Должность”,

Для этого можно либо при выборе типа указать “Мастер подста-новок” (см. последнюю строку в ниспадающем списке типов полей на рис. 1.5), либо выбрать позицию “Поле подстановки” в меню “Встав-ка”.

Последовательность шагов при создании поля подстановки изо-бражены на рис 1.7-1.9. При создании поля с помощью мастера подста-новок имя поля можно не задавать, а сразу перейти к столбцу “Тип дан-ных” и выбрать в списке строку “Мастер подстановок”. Имя поля бу-дет задано позже в процессе создания поля с помощью мастера.

Рис. 1.7. Создание столбца подстановки. Начальный экран

Так как список создаваемый в рассматриваемом случае короткий и стабильный, то создадим столбец подстановки с фиксированным набо-ром значений (рис. 1.7). В появившемся далее окне введем требуемые значения (рис. 1.8).

12

Рис. 1.8. Создание столбца подстановки. Столбец с введенным списком значений

Далее зададим имя этого поля (рис. 1.9).

Рис. 1.9. Создание столбца подстановки. Задание имени столбца

13

При создании поля таким способом его тип будет “текстовый” и длина – 50. После создания поля с использованием мастера подстановок с фиксированным набором значений его тип и длину можно скорректи-ровать.

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

Если число значений поля подстановки достаточно велико, и они могут меняться со временем, то следует использовать вторую альтерна-тиву – использовать значения из другой таблицы/запроса (рис. 1.10-1.12). Эта возможность используется в нашем примере для поля «КОД_КАФЕДРЫ», значения которого будут браться из таблицы «КА-ФЕДРА». Естественно, что таблица «КАФЕДРА» должна быть предва-рительно создана.2

Для создания поля подстановки, источником для которого служит другая таблица, лучше сначала создавать основную таблицу (в паре “КАФЕДРА”-“СОТРУДНИК” основной будет таблица “КАФЕДРА”), а затем создавать поле подстановки (в нашем случае это поле “Код_кафедры” в таблице “СОТРУДНИК”). Если поле уже было создано (как в нашем случае), то его можно скорректировать, выбрав в столбце “Тип данных” позицию “Мастер подстановки” (рис. 1.10) и далее вы-полнить те шаги, которые описаны ниже.

2 Если вы изучаете данное пособие, выполняя на компьютере описываемые дейст-вия, то временно отложите выполнение шагов по созданию поля подстановки из другой таблицы. Завершите создание таблицы СОТРУДНИК как описано далее; за-тем создайте таблицу КАФЕДРЫ, свяжите эти таблицы. После этого откройте таб-лицу СОТРУДНИК в режиме «конструктор» и выполните описанные здесь шаги.

14

Рис. 1.10. Создание поля подстановки (шаг 1)

В окне «Создание подстановки» выбираем альтернативу «Стол-бец подстановки использует значения из таблицы или запроса» (рис. 1.11).

Рис. 1.11. Создание поля подстановки (шаг 2)

15

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

Рис. 1.12. Выбор таблицы/запроса источника для поля подстановки

Далее надо определить колонку таблицы-источника, значения из которой будут подставляться в описываемую колонку (рис. 1.13). В на-шем примере таким полем является «КОД_КАФЕДРЫ». Но так как пользователь вряд ли помнит коды, то желательно, чтобы при выборе нужного значения высвечивались названия кафедр. Для этого в окно «Выбранные поля» следует перенести еще и поле «НАИМЕНОВА-НИЕ_КАФЕДРЫ_ПОЛНОЕ» или

«НАИМЕНОВАНИЕ_КАФЕДРЫ_КРАТКОЕ».

16

Рис. 1.13. Выбор колонки-источника для поля подстановки

В появившемся далее окне (рис.1.14) можно не только задать ши-рину столбцов (позиционировавшись на границу столбца и перетащив ее в нужном направлении), но и определить, сколько столбцов будет выво-диться на экран при вводе значения в это поле: если оставить знак «√» в позиции «Скрыть ключевой столбец», то в нашем примере будет вы-водиться только «НАИМЕНОВАНИЕ_КАФЕДРЫ_ПОЛНОЕ». Если эту «галочку» убрать, то будут выводиться оба поля: «КОД_КАФЕДРЫ» и

«НАИМЕНОВАНИЕ_КАФЕДРЫ_ПОЛНОЕ».

17

Рис. 1.14. Создание поля подстановки. Задание ширины столбцов

  1. ^ 1.2.2 Определение ключа таблицы


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

18

Рис. 1.15. Задание ключа таблицы в виде поля типа счетчик при закры-тии таблицы после описания ее полей

Если Вы собираетесь в качестве ключа выбрать автоматически за-даваемый системой код (т. е. поле типа “счетчик”), то можно это поле первоначально не описывать, а подтвердить необходимость его создания при завершении описания таблицы. Access создаст это поле автоматиче-ски (рис. 1.16).

19

Рис. 1.16. Описание структуры таблицы с автоматически введенным системой ключевым полем Код

Если вы определяете ключ самостоятельно, то это можно сделать несколькими путями: позиционироваться на соответствующее поле и нажать кнопу “Ключевое поле” ( ), либо выбрать позицию меню Правка/Ключевое поле, либо воспользоваться правой кнопкой мыши для вызова контекстного меню, предварительно позиционировавшись на то поле, которое определяется как ключевое.

Для удобства дальнейшей работы с таблицей "СОТРУДНИК" за-дадим ключевое поле "КОД_СОТРУДНИКА" как показано на рис. 1.17.

20

Рис. 1.17. Описание структуры таблицы с измененным ключевым полем

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

  1. ^ 1.2.3. Свойства полей


В нижней части экрана описания таблицы отображается список свойств выбранного поля. Перечень свойств будет зависеть от выбран-ного тапа поля (табл. 1.2).

21

Свойства полей (в зависимости от типа поля)

Таблица1.2

Тип поля

Тексто

вое

Логи-ческое

MEMO

Числовое

Дата/

время

Денежный

Счетчик

Свойство

размер поля

+

+

+

+

Число деся-тичных зна-ков

+

+

Формат поля

+

+

+

+

+

+

+

Маска ввода

+

+

+

+

Подпись по-ля

+

+

+

+

+

+

+

Значение по умолчанию

+

+

+

+

+

+

Условие на значение

+

+

+

+

+

+

Сообщение об ошибке

+

+

+

+

+

+

Обязатель-ное поле

+

+

+

+

+

+

Пустые строки

+

+

+

Индексиро-ванное поле

+

+

+

+

+

+

Новые зна-чения


Набор допустимых свойств вызывает некоторое удивление. На-верное, не всеми возможностями надо пользоваться. Так, обычно не ре-комендуется проводить индексирование по логическому полю. Назначе-ние поля MEMO – хранение длинных текстов. Как и зачем задавать для них условия на значение – не совсем понятно. То же (но несколько в меньшей степени) относится и к формату поля данного типа, а также формату поля счетчик.

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

Свойство “^ Индексированное поле” определяет, надо ли создавать индекс по этому полю. Индекс ускоряет выполнение запросов, в кото-рых используются индексированные поля, и операции сортировки и группировки.

Свойство “Индексированное поле” может иметь следующие значения:

22

Таблица 1.3
  1   2   3   4   5



Скачать файл (96.7 kb.)

Поиск по сайту:  

© gendocs.ru
При копировании укажите ссылку.
обратиться к администрации