Структура базы данных в среде MS Access 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Структура базы данных в среде MS Access



 

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

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

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

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

Далее в таблице 1 приведены названия, типы и описания полей таблицы.

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

Таблица 1

Поля таблицы

Название Тип поля Описание
Text текстовое поле Строки алфавитно-цифровых символов. Например, адрес, номер телефона, почтовый индекс и т. п. Текстовое поле может содержать от 0 до 255 символов. Основное свойство – размер.
Memo поле MEMO Длинные строки. Максимальный размер ограничен 1,2 Гбайт (или до 65 535 символов). Особенность: реально эти данные хранятся не в поле, а в другом месте, а в поле хранится только указатель на то, где расположен текст.
Yes/No Логическое поле Yes/No, True/False, On/Off, 0 или 1. Длина всегда равна 1 байту.
Byte   Целые числа в диапазоне от 0 до 255.
Integer Целое Целые числа в диапазоне от –32768 до +32767.
Long Длинное целое Целые числа в диапазоне от –2147483648 до 2147483647.
Single Одинарной точности Вещественные числа в диапазоне от – 3,4×1038до 3,4×1038.
Double Двойной точности Вещественные числа в диапазоне от – 1,8×10308до 1,8×10308.
Date/Time   Дата и время.
Currency   Используется для обозначения денежных сумм. Запоминаются 11 знаков слева от десятичной точки и 4 знака справа от десятичной точки.

 

Окончание табл. 1

Название Тип поля Описание
Binary   Любой двоичный объект размером до 1,2 Гбайт. Этот тип обычно используется для хранения рисунков и двоичных файлов.
Counter Счетчик Длинные целые с автоматическим приращением. Это обычное числовое поле, но оно имеет свойство автоматического наращивания. Если в базе есть такое поле, то при вводе новой записи в него автоматически вводится число, на единицу большее, чем значение того же поля в предыдущей записи. Это поле удобно для нумерации записей.
OLE   OLE-объекты, созданные в других программах с использованием протокола OLE. Размер ограничен 1,2 Гбайт. В таком поле можно хранить картинки, музыкальные клипы и видеозаписи

 

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

Уникальное поле – это поле, значения в котором не могут повторяться.

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

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

Ключевые поля бывают двух типов – первичные (Primary Key) и внешние (Foreign Key). Первичные ключи служат для однозначного определения записи в таблице и должны содержать уникальные для данной таблицы значения. Система автоматически предотвращает ввод в такое поле повторяющихся и пустых (Null)значений.

Самый простой способ создания первичного ключа – добавить в таблицу поле типа счетчик (AutoNumber) и затем нажать кнопку с изображением ключа на панели инструментов. В результате этого свойство счетчика Обязательное поле (Required) примет значение Да (Yes), а свойство Индексированное поле (Indexed) – Да (совпадения не допускаются) (Yes (No Duplicates)). Признаком первичного ключа является иконка с изображением ключа слева от наименования поля. Кроме того, первичный ключ автоматически включается в список индексов таблицы под именем PrimaryKey. Использование счетчика в этом случае является очень удобным, поскольку Microsoft Access сам заботится о правильном заполнении этого поля.

В качестве первичного ключа можно также определить любое подходящее поле (кроме поля типа объект OLE (OLE Object)), либо не содержащее данные, либо содержащее уникальные непустые значения. Такой первичный ключ, состоящий из одного единственного поля, называется простым (Single-field).

Если ни одно из полей таблицы не содержит или по сути не может содержать уникальных значений (например, фамилии могут повторяться), то можно вместо простого ключа создать составной (Multiple-field) ключ, состоящий из нескольких полей. Чтобы создать составной ключ, необходимо в режиме конструктора таблиц (Design View) выделить требуемые поля (если удерживать нажатой клавишу Ctrl, то при помощи мыши можно выделять несмежные поля) и затем нажать кнопку с изображением ключа на панели инструментов. Примером такой таблицы может служить таблица Заказано (Order Details) из учебной базы данных Борей (Northwind), связывающая таблицы Заказы (Orders) и Товары (Products). Ключ в этой таблице состоит из двух полей: КодЗаказа (OrderlD) и КодТовара (ProductID). Такая комбинация полей ключа, по замыслу разработчиков, гарантирует уникальность содержащихся в них значений. Т. е. возможность включения в один заказ двух записей об одном и том же товаре недопустима (хотя в жизни бывает всякое).

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

Первичный и внешний ключи должны быть одинакового типа, иначе при создании связи между таблицами по этим полям Microsoft Access выдаст сообщение об ошибке и связь создана не будет. Полю типа счетчик (AutoNumber) эквивалентен числовой тип, свойство Размер поля (Field Size) которого установлено в значение Длинное целое (Long Integer). Например, таблицы Сотрудники (Employees) и Заказы (Orders) учебной базы данных Борей (Northwind) связаны по одноименным полям КодСотрудника (EmployeeID). Соответствующее поле в таблице Сотрудники (Employees) является первичным ключом типа счетчик (AutoNumber), а в таблице Заказы (Orders) – внешним ключом типа длинное целое (Long Integer).

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

Индексы, как и первичные ключи, могут быть простыми (состоящими из одного поля) и составными (содержащими несколько полей). Для того чтобы создать простой индекс, следует выбрать в режиме конструктора таблицы (Design View) нужное поле и установить его свойство Индексированное поле (Indexed) в одно из двух значений: Да (Совпадения не допускаются) (Yes (No Duplicates)) или Да (Допускаются совпадения) (Yes (Duplicates OK)). В результате будет создан индекс с именем, совпадающим с наименованием поля.

 

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

1. Что такое поле и запись в базе данных?

2. Назначение Свойств поля Имя и Подпись.

3. Уникальное поле, его назначение.

4. Дайте определение ключевого поля.

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

 

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

 

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

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

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

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

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

3. Опытные разработчики пользуются Мастером таблиц. Это программа, ускоряющая создание структуры таблицы. Мастер задает ряд вопросов и, руководствуясь полученными ответами, создает структуру таблицы автоматически.

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

Наиболее универсальный ручной метод предоставляет пункт − Конструктор. В этом режиме можно самостоятельно задать имена полей, выбрать их тип и настроить свойства. Для изменения свойств полей надо перейти в режим Конструктор щелчком на кнопке Вид. Чтобы вставить новое поле, надо установить указатель мыши на маркер поля и нажать клавишу Insert. Чтобы удалить поле, его надо выделить и нажать кнопку Delete. Закончив создание структуры, можно щелкнуть на кнопке Вид и перейти в Режим таблицы для заполнения ее данными.

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

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

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

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

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

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

1. Какую роль играют таблицы в базе данных?

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

3. Как происходит сохранение данных, вносимых в таблицу?

 

 



Поделиться:


Последнее изменение этой страницы: 2017-01-25; просмотров: 1168; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.140.242.165 (0.022 с.)