Тип данных.

Создание таблицы с помощью Конструктора таблиц.

Создание таблицы с помощью мастера.

Создание таблицы путем ввода данных.

Если вы затрудняетесь сразу определить структуру таблицы, Microsoft Access позволяет создать таблицу путем ввода данных в окно с традиционной табличной формой. Для этого выбираем Создание таблицы путем ввода данных. В поля появившейся на экране таблицы (рис. 3.22) нужно ввести требуемые данные. Тип данных в одном поле (столбце) во всех записях должен быть одинаковым. Можно ввести свои собственные заголовки столбцов, для чего щелкнуть правой кнопкой мыши по заголовку столбца и выбрать из контекстного меню команду Переименовать столбец.По окончании ввода данных нажать кнопку Закрыть (в верхнем правом углу окна таблицы) и в ответ на вопрос «Сохранить изменения макета или структуры таблицы <имя таблицы>?» ответить Да или Нет. В окне Сохранение в поле Имя таблицы ввести имя новой таблицы и нажать кнопку ОК. Затем Access выдаст сообщение: «Ключевые поля не заданы» и вопрос «Создать ключевое поле сейчас?» Необходимо нажать кнопку Нет, если одно или несколько полей в таблице могут однозначно идентифицировать записи в таблице и служить первичным ключом, или кнопку Да, и тогда Access создаст дополнительное поле, которое сделает ключевым. После этого в списке таблиц появится новая таблица, которая будет содержать введенные данные. Поля таблицы будут иметь либо стандартные названия, либо те, которые вы ввели, а их типы будут определяться по введенным данным. В случае если в один столбец были введены данные разных типов, например числа, даты и текст, тип поля определяется как Текстовый.

Рис. 3.22. Создание таблицы путем ввода данных.

Для этого необходимо выбрать Создание таблицы с помощью мастера. В диалоговом окне Создание таблиц (рис. 3.23) выбрать назначение таблицы: Деловые или Личные. В поле Образцы таблиц выбрать подходящую таблицу. Переместить нужные поля из списка Образцы полей в список Поля новой таблицы. Для этого используют кнопки со стрелками: > — переместить одно поле, >>— переместить все поля.

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

В следующем окне Мастер таблиц предлагает установить связи между существующими таблицами и создаваемой таблицей. Он пытается сам создать связи между таблицами и предоставляет информацию о создаваемых связях пользователю в виде списка. При необходимости исправить связи нужно выбрать соответствующую строку списка и нажать кнопку Связи. В окне Связи нужно выбрать тип связи с данной таблицей. В четвертом диалоговом окне Мастера таблиц (рис. 3.24) можно выбрать, что вы будете делать с таблицей дальше. Выберите необходимый переключатель и нажмите на кнопку Готово.

Рис. 3.23. Первое диалоговое окно Мастера таблиц.

Рис. 3.24. Четвертое диалоговое окно Мастера таблиц.

 

В режиме Конструктора таблицы создаются путем задания имен полей, их типов и свойств. Чтобы создать таблицу в режиме Конструктора, необходимо выбрать Создание таблиц в режиме конструктора. При этом открывается пустое окно Конструктора таблиц (рис. 3.25). В столбец Имя поля надо ввести имена полей создаваемой таблицы. В столбце Тип данных для каждого поля таблицы выбрать из раскрывающегося списка тип данных, которые будут содержаться в этом поле. В столбце Описание можно ввести описание данного поля (не обязательно).

В нижней части окна Конструктора таблиц на вкладках Общие и Подстановка ввести свойства каждого поля или оставить значения свойств, установленные по умолчанию. После описания всех полей будущей таблицы нажать кнопку Закрыть (в верхнем правом углу окна таблицы) и на вопрос «Сохранить изменения макета или структуры таблицы <имя таблицы>?» нажать кнопку Да. В появившемся окне Сохранить как в поле Имя таблицы ввести имя создаваемой таблицы и нажать кнопку ОК. В ответ на. сообщение «Ключевые поля не заданы» и вопрос «Создать ключевое поле сейчас?» нажмите кнопку Да, если ключевое поле необходимо, или кнопку Нет если такого не требуется. После указанных действий в списке таблиц в окне базы данных появятся имя и значок новой таблицы. Ввести данные в созданную таблицу можно, открыв таблицу в режиме Таблицы.

Имена полей таблицыдолжны удовлетворять следующим требованиям:

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

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

- желательно избегать употребления имен полей, совпадающих с именами встроенных функций или свойств Microsoft Access (например, Name — имя).

- имя поля не должно начинаться с пробела или управляющего символа (коды ASCII 00-31).

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

- эти же правила действительны для имен таблиц и других объектов Microsoft Access.

Рис. 3.25. Окно новой таблицы в режиме Конструктора

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

1)Текстовый — символьные или числовые данные, не требующие вычислений. Поле данного типа может содержать до 255 символов. Размер текстового поля задается с помощью свойства Размер поля, в котором указывается максимальное количество символов, которые могут быть введены в данное поле. При необходимости ввести строку большего размера, чем указано в данном свойстве, надо значение свойства изменить, т. к. место под дополнительные символы не резервируется. Независимо от длины текстового поля оно хранится в базе данных Access в записи переменной длины. Access не занимает память под неиспользуемую часть текстового поля в записи, что уменьшает общий размер базы данных.

2) Поле типа MEMOпредназначено для ввода текстовой информации, по объему превышающей 255 символов. Такое поле может содержать до 65 535 символов. Этот тип данных отличается от типа Текстовый тем, что в таблице хранятся не сами данные, а ссылки на блоки данных, хранящиеся отдельно. За счет этого ускоряется обработка таблиц (сортировка, поиск и т. п.). Поле типа MEMO не может быть ключевым или проиндексированным.

3) Числовой тип применяется для хранения числовых данных, используемых в математических расчетах. От выбора подтипа (размера) данных числового типа зависит точность вычислений. Для установки подтипа числовых данных служит свойство Размер поля. Данные этого типа могут занимать 1, 2, 4, 8 или 16 байт памяти. Обычно по умолчанию используется подтип Длинное целое, который занимает 4 байта и представляет собой число в пределах от -2 147 483 648 до +2 147 483 647.

4) Дата/Время — тип для представления даты и времени. Позволяет вводить даты с 100 по 9999 год. Размер поля - 8 байт. Даты и время хранятся в специальном фиксированном числовом формате. Дата является целой частью значения поля типа Дата/Время, а время — его дробной частью. Access предоставляет большой выбор форматов отображения даты и времени.

5) Денежный — тип данных, предназначенный для хранения данных, точность представления которых колеблется от 1 до 4 десятичных знаков. Целая часть данного типа может содержать до 15 десятичных знаков.

6) Счетчик — поле содержит 4-байтный уникальный номер, определяемый Microsoft Access автоматически для каждой новой записи либо случайным образом, либо путем увеличения предыдущего значения на 1. Значения полей типа счетчика обновлять нельзя. Максимальное число записей в таблице с полем счетчика не должно превышать двух миллиардов.

7) Логический — логическое поле, которое может содержать только два значения, интерпретируемых как Да/Нет, Истина/Ложь, Включено/Выключено. Поля логического типа не могут быть ключевыми, но их можно индексировать. Access использует величину 1 для представления значения Истина и величину 0 — для значения Ложь.

8) Поле объекта OLE — содержит ссылку на OLE-объект (лист Microsoft Excel, документ Microsoft Word, звук, рисунок и т. п.). Объем объекта ограничивается имеющимся в наличии дисковым пространством. Тип объекта OLE не указывается в свойствах поля объекта OLE. Он зависит от приложения, использованного для создания объектов OLE, которые хранятся в этом поле. Упаковщик объектов позволяет внедрять файлы, созданные приложениями, которые не являются серверами объектов OLE. Например, он позволяет внедрить текстовые файлы в качестве объектов в таблицы Access. В поле объекта OLE могут храниться произвольные данные, в том числе и данные нескольких типов. Это позволяет обойти основное ограничение реляционных баз данных, которое требует, чтобы в каждом поле хранились данные только одного типа.

9) Гиперссылка — дает возможность хранить в поле ссылку, с помощью которой можно ссылаться на произвольный фрагмент данных внутри файла или Web-страницы на том же компьютере, в Интернет. Гиперссылка состоит из четырех частей: отображаемый текст, адрес (путь к файлу или странице), дополнительный адрес (положение внутри файла или страницы) и текст всплывающей подсказки. Каждая часть гиперссылки может содержать до 2048 символов. Поле типа Гиперссылка не может быть ключевым или индексированным.

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

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

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

Чтобы добавить или удалить поле из таблицы надо щелкнуть левой кнопкой мыши в столбце Имя поля, напротив какой-либо строки, и в контекстном меню выбрать нужное действие.

Ключевое поле — это одно или несколько полей, комбинация значений которых однозначно определяет каждую запись в таблице. Если для таблицы определены ключевые поля, то Access предотвращает дублирование или ввод пустых значений в ключевое поле. Ключевые поля используются для быстрого поиска и связи данных из разных таблиц при помощи запросов, форм и отчетов. В Access можно выделить три типа ключевых полей: счетчик, простой ключ и составной ключ. Для создания ключевого поля типа Счетчик необходимо в режиме Конструктора таблиц включить в таблицу поле счетчика и задать для него автоматическое увеличение на 1. Указать это поле в качестве ключевого путем нажатия на кнопку Ключевое поле на панели инструментов Конструктор таблиц.

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

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

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

Связывание таблиц на схеме данных.

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

Между таблицами могут быть следующие типы связей:

- связь «один к одному» устанавливается в случаях, когда конкретная строка главной таблицы в любой момент времени связана только с одной строкой подчиненной таблицы;

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

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

Для того чтобы было удобно просматривать, создавать, удалять и модифицировать связи между таблицами, в Microsoft Access используется схема данных. Чтобы открыть схему данных, необходимо выполнить команду Сервис - Схема данных(рис. 3.26). По умолчанию, если связи уже были созданы, схема будет содержать все таблицы со связями. Чтобы убрать какую-либо таблицу из схемы данных, необходимо щелкнуть правой кнопкой мыши на любом месте этой таблицы и из контекстного меню выбрать команду Скрыть таблицу. (Удаление таблицы из схемы данных не означает удаление ее из базы данных, просто она не будет присутствовать на схеме.) Чтобы вновь добавить в эту схему свернутую таблицу или таблицу, у которой связи еще не установлены, необходимо: 1) щелкнуть правой кнопкой мыши на свободном пространстве схемы данных и из контекстного меню выбрать команду Добавить таблицу; 2) в появившемся диалоговом окне Добавление таблицы раскрыть вкладку Таблицы, выбрать из списка необходимую таблицу и нажать кнопку Добавить.

Рис. 3.26. Пример схемы данных.

Рис. 3.27. Диалоговое окно «Изменение связей».

Создать связь можно двумя путями. Первый путь — графический. Следует выбрать в главной таблице поле для связи, нажать левую кнопку мыши и перетащить поле во вторую таблицу. Отпустить левую кнопку мыши над тем полем подчиненной таблицы, с которым устанавливается связь. После этого появится диалоговое окно Изменение связей. Второй путь — выбрать команду Связи - Изменить связь из главного меню Access. После этого появится диалоговое окно (рис. 3.27), в котором можно изменить поля, которые связаны. Включение флажка Обеспечение условия целостности данных позволяет защититься от случаев удаления записей из одной таблицы, когда связанные с ними данные других таблиц останутся без связи. Если установить параметры связи между таблицами Каскадное обновление связанных полей и Каскадное удаление связанных записей, то при любых изменениях данных в главной таблице произойдет автоматической изменение связанных данных в подчиненной таблице.

 

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