Таблица 1. Типы данных и их представление




 

В самом общем смысле база данныхэто один или несколько файлов, содержащие связанную (по смыслу) между собой информацию. Допустим, в одном файле хранятся все данные о поступивших в ВУЗ студентах (ФИО, № группы, Дата рождения и т.д.), в другом – результаты их успеваемости, в третьем – данные о каждой группе (кол-во студентов, староста, куратор и т.д.). Но что делать, если какие-то данные должны использовать несколько приложений или людей, и при этом нельзя допустить чтобы одни и те же данные корректировали одновременно? Когда возникают такие проблемы, то для разрешения их можно воспользоваться системой управления базами данных (СУБД).

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

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

 

Основные элементы интерфейса Access. Объекты Access

 

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

 
 
Рис.1. Окно базы данных


 

 

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

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

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

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

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

Модули – программные процедуры, написанные на VBA. Если не хватает стандартных средств Access, можно расширить возможности системы, написав для этого необходимые модули.

 

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

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

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

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

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

Запись. Полные сведения об одном объекте (например, конкретном студенте или преподавателе) содержатся в одной записи таблицы. Запись – это совокупность значений всех полей для одного объекта. Количество записей в таблице соответствует количеству объектов: если в ВУЗе 100 студентов, то в таблице, содержащей список студентов, будет 100 записей. Общее количество записей ограничивается емкостью жесткого диска. Всем записям таблицы соответствует одно и то же множество полей, хотя в определенных полях любая запись может содержать пустые (Null) значения.

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

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

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

 

Типы данных и их представление

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

 

Таблица 1. Типы данных и их представление

 

Тип данных. Содержимое поля   Размер  
   
Текстовый. Текст или комбинация текстовых и числовых значений, например, адреса. Кроме того, в такие поля записывают числовые значения, для которых не предполагается выполнение расчетов, такие как телефонные или инвентарные номера или почтовые индексы. До 255 символов. Максимальное число символов, которые можно ввести в поле, зависит от свойства «Размер поля»
Поле MEMO. Длинный текст, например, примечания или описания. До 65536 знаков
Числовой. Числовые данные, допускающие использование в математических вычислениях за исключением денежных расчетов (для последних определен тип "Денежный"). Конкретный числовой тип опреде­ляется значением свойства "Размер поля". 1, 2, 4 или 8 байт
Дата/время. Значения даты или времени. 8 байт.
Денежный. Денежные значения. Тип "Денежный" позволяет проводить вычисления без округления значений. Максимальная точность составляет 15 знаков слева от десятичной запятой и 4 знака справа от запятой. 8 байт.

 

 

Продолжение табл. 1

 

   
Счетчик. Уникальные последовательные (с шагом 1) или случайные номера, автоматически вставляемые при вставке записи. 4 байт  
Логический. Поля, которые могут иметь только одно значение из пары значений, таких как Да/Нет, Ис­тина/Ложь или Вкл/Выкл. 1 бит.
Мастер подстановок. Создает поле, позволяющее выбрать с помощью раскрывающегося списка значение из другой таблицы или из списка значений. При выборе данного значения в списке типов данных вызывается Мастер, заполняющий список подстановок. Размер, равный размеру ключевого поля, используемого для выполнения подстановок, обычно, 4 байт.
ППоле объекта OLE. Объекты (например, документы Word, электронные таблицы Excel, рисунки и т.д. и т.п.), созданные в других приложениях, поддерживающих протокол OLE (Object Linking and Embedding), которые могут быть связаны или внедрены в таблицу Microsoft Access. Для вывода содержимого поля объекта OLE в форме или отчете необходимо создать связанную рамку объекта. До 1 Гбайт (ограничивается объемом диска).
Гиперссылка(Для Access 2000 и выше). Обеспечивает связь с WEB-страницей, расположенной в интернет, внутренней сети или локальном компьютере. Позволяет переходить из текущего поля к ин­формации в другом файле. При выборе этого поля Access автоматически запускает Web-броузер и отображает указанную страницу.  

 


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

 

Таблица 2. Подтипы полей для типа Числовой

 

Размер поля Диапазон значений Десятичные знаки Размер памяти в байтах
Байт От 0 до 255 Нет 1 байт
Целое От - 32 768 до 32 767 Нет 2 байт
Длинное целое От - 2 147 483 648 до 2 147 483 647 Нет 4 байт
С плавающей точкой (4 байт) От - 3,402823E38 до 3,402823E38   4 байт
С плавающей точкой (8 байт) от - 1,7976931348623E308 до 1,7976931348623E308   8 байт
Код репликации Глобальный уникальный идентификатор Нет 16 байт

 

Общее проектирование и цель создания БД

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

Во - первых, допускаем, что ВУЗ имеет 3 кафедры: КФ1, КФ2 и КФ3.

Во - вторых, на каждом из трех курсов обучается по две группы. Названия группам будем давать по принципу, принятому во многих ВУЗах: начало отражает принадлежность к определенной структуре ВУЗа и является, как правило, текстовой составляющей, последние символы в названии, как правило, – цифры, соответствующие году поступления в ВУЗ. Поэтому в нашей модели будем использовать такие названия групп, как А-N и Б-N, где N – последняя цифра года поступления, например, для 2003/4 учебного года А-3 и Б-3 – группы I курса, А-2 и Б-2 – II курса, А-1 и Б-1 – I курса. Номера студенческих билетов комбинируются из года поступления и порядкового номера студента на данном курсе, например, 1 - 10 (10-й студент 2001 года поступления).

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

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

В - пятых, номера аудиторий комбинируются из имени корпуса ВУЗа (текстовая составляющая) и номера аудитории внутри данного корпуса – во многих ВУЗах принята именно такая система нумерации.

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

Итак, база Факультет может содержать следующие таблицы: Учетная карта (табл. 3), Ведомость (табл. 4), Группы (табл. 5), Преподаватели (табл. 6), Кафедры (табл. 7).

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

 

Таблица 3. Предполагаемые поля таблицы Учетная карта

 

Имя поля Тип данных Размер Описание
ФИО Текстовый   Фамилия И.О. студента
Nбил Текстовый   № студ. билета (например: 1-01)
Nгр Текстовый   № группы
Пол Текстовый   Женщина – Ж, Мужчина – М
ФормаОплаты Текстовый   Бюджетная – Б, Коммерческая – К
Льготы Логический   Есть льготы (сирота, инвалид и т.д.) – Да, в противном случае – Нет
ДатаРожд Дата/время   Дата рождения
Телефон Числовой Длинное целое Контактный телефон
Фото OLE   Фотография студента
Примечание МЕМО   Особые отметки: характеристика, награды, поощрения, выговоры и т.п.

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

Таблица 4. Предполагаемые поля таблицы Ведомость

 

Имя поля Тип данных Размер Описание
       
ФИО Текстовый   Фамилия И.О. студента
1_зач Текстовый   Отметка: зачтено – з, не зачтено – н
1_Э1 Числовой Целое Оценка дисциплины 1-го экзамена I курса
1_Э2 Числовой Целое Оценка дисциплины 2-го экзамена I курса
2_зач Текстовый   Отметка: зачтено – з, не зачтено – н
2_Э1 Числовой Целое То же, что и 1_Э1, но для II курса
2_Э2 Числовой Целое То же, что и 1_Э2, но для II курса
3_зач Текстовый   Отметка: зачтено – з, не зачтено – н
3_Э1 Числовой Целое То же, что и 1_Э1, но для III курса
3_Э2 Числовой Целое То же, что и 1_Э2, но для III курса
Диплом Числовой Целое Оценка за выпускную работу (диплом, госэкзамен)

 

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

 

Таблица 5. Информация об общих характеристиках группы помещается
в таблице Группы

 

Имя поля Тип данных Размер Описание
       
Nгр Текстовый   № группы – идентификатор группы

 

 

Продолжение табл. 5

 

       
Куратор Текстовый   Фамилия И.О. куратора
Староста Текстовый   ФИО старосты
КолСтуд Числовой Целое Количество студентов в группе
Курс Числовое Целое Курс, на котором обучается группа, вычисляется по номеру группы

 

Следует отметить, что последние два поля таблицы Группы можно не включать на этапе построения таблицы, т.к. их значения являются производными от значений других полей: КолСтуд зависит от ко­личества записей в таблице Учетная карта с данным Nгр, а номер курса – поле Курс – может быть вычислено, например, по последней цифре группы и текущего года. Поэтому эти поля мы отнесем к разряду вычисляемых полей и включим их с помощью специального запроса. Поле Nгр является первичным ключом таблицы Группы.

 

Таблица 6. Информацию о кафедрах факультета помещаем

в таблицу Кафедры

 

Имя поля Тип данных Размер Описание
Кафедра Текстовый   Название кафедры
ЗавКаф Текстовый   Фамилия И.О. заведующего кафедрой
Nауд Текстовый   № аудитории
Т/ф Числовой Длинное целое Номер телефона кафедры

 

Таблица 7. Информацию о профессорско - преподавательском составе

помещаем в таблицу Преподаватели

 

Имя поля Тип данных Размер Описание
ФИО Текстовый   Фамилия, имя, отчество преподава­теля
Кафедра Текстовый   Кафедра, на которой работает препо­даватель
Должность Текстовый   Должность
Телефон Числовой Длинное целое Контактный телефон преподавателя

 

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

Существует несколько типов связей:

связь "один-к-одному";

связь "один-ко-многим;"

связь "многие-ко-многим".

Связь "один-к-одному" представляет собой простейший вид связи данных, когда первичный ключ таблицы является в то же время внешним ключом, ссылающимся на первичный ключ другой таблицы. Такую связь бывает удобно устанавливать тогда, когда невыгодно держать разные по размеру (или по другим критериям) данные в одной таблице, или для того чтобы не занимать оперативную память, если эти данные используются сравнительно редко. Так в БД ФАКУЛЬТЕТ данные о студентах разбиты на две таблицы: в одной из них хранятся результаты экзаменационных сессий (Ведомость) – достаточно часто используемая таблица в учебном процессе, в другой (Учетная карта) – подробная информация о каждом студенте, которая требуется для обработки в течение года относительно редко. В этом случае устанавли­вается связь "один-к-одному" по ключевому полю ФИО.

Связь с отношением "один-ко-многим" является наиболее часто используемым типом связи между таблицами. В такой связи каждой записи в таблице "A" могут соответствовать несколько записей в таблице "B", а запись в таблице "B" не может иметь более одной соответствующей ей записи в таблице "A". Например, между таблицами Группы и Учетная карта существует отношение "один-ко-многим": в каждой группе много студентов, но один студент может учиться только в одной группе. Связь "один-ко-многим" реализуется парой " внешний ключ – первичный ключ ", т.е. когда определен внешний ключ, ссылающийся на первичный ключ другой таблицы.

В таблицах, связанных с отношением "многие-ко-многим", одной записи в каждой таблице могут соответствовать несколько записей в другой таблице. Для установления отношения "многие-ко-многим" необходимо создать третью (связующую) таблицу и включить в нее ключевые поля из обеих таблиц. В нашем примере отсутствуют связи такого типа. Продемонстрировать такую связь можно на примере работы библиотеки. В одной таблице содержатся данные о книгах (каждая книга может быть в не­скольких экземплярах), в другой – данные о читателях. Каждый читатель может иметь на руках несколько книг, книга одного и того же названия может быть у нескольких читателей. Поэтому создается промежуточная таблица – абонентская карта (рис 2).

 

 

Рис 2. Реализация связи "многие-ко-многим"

 

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

 

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

 

1. Что такое база данных? Какие достоинства имеет СУБД Access?

2. Перечислите основные элементы окна базы данных.

3. Перечислите основные объекты СУБД Access, их назначение
и взаимосвязь.

4. Для чего служит структура "таблица"?

5. Что такое поле таблицы? Перечислите три его основных параметра.

6. Какого типа данные могут содержаться в поле?

7. Что такое запись таблицы? Есть ли какие-либо ограничения на количество записей в таблице? Чем поле отличается от записи?

8. Что такое первичный ключ? Как он выбирается?

9. Как реализуются связи между таблицами? Для чего они устанавливаются?

10. Могут ли МЕМО-поля и поля объекта OLE использоваться в качестве первичного ключа?

11. На примере БД Факультет поясните, какие поля и почему выбраны в качестве ключевых.

12. Чем отличается ключевое поле от остальных полей?

13. Как соотносятся записи таблиц при реализации связи типа а) один-к-одному; б) один-ко-многим; в) многие-ко-многим?

 



Поделиться:




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

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-04-14 Нарушение авторских прав и Нарушение персональных данных


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