Меню

Таблицы для access примеры

Таблицы для access примеры

Сегодня мы подробно поговорим о таблицах в Access.

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

Вспомним, что мы уже знаем о таблицах.
1. Идентификатор (ключ)
Все записи в таблицах перенумерованы. Для этого используется специальное поле (его лучше делать самым первым и называть Id). Тип этого поля – счетчик. Счетчик каждой новой записи автоматически дает новый порядковый номер. Этот номер нельзя удалить, нельзя изменить (попробуйте-ка!).
Если вы удалили из таблицы запись (например с Id = 12 – щенка Тедди, когда он заболел и не смог принимать участия в выставке), то, если он выздоровеет, и вы снова добавите Тедди в таблицу, Id у него будет уже другим, на 1 больше последней записи в таблице.
Это нужно для того, чтобы идентификаторы в одной таблице ни в коем случае НЕ СОВПАДАЛИ. Иначе они перестанут быть идентификаторами!
Как следствие, нельзя, чтобы идентификаторы соответствовали номерам квартиры, выставочными номеркам собак; записи, отсортированные по Id не обязательно должны идти в алфавитном порядке, по возрастанию даты и времени. Иными словами, Id не несут никакого содержательного смысла. Они нужны только для того, чтобы устанавливать СВЯЗИ между записями в таблицах.

2. Стандарты именования
Имена таблиц и полей в таблицах (как и имена запросов, форм, отчетов и макросов) записываются по-английски без пробелов (через нижнее подчеркивание dog_age или каждое слово с большой буквы DogAge). Перед именем таблицы ставится приставка tb… Таким образом, записи становятся легко читаемы (например, tbDog.BirthDate), и не возникает проблем с кодировкой кириллицы.
Надо сказать, что Access не запрещает писать названия кириллицей и с пробелами. Чтобы имена с пробелами не «рассыпались» он автоматически заключает их в квадратные скобки вот так: [Выставка собак].[важная информация 1]. Но выглядит это непрофессионально и затрудняет визуальное восприятие имен.

3. Связи между таблицами
Существует два основных типа связей между таблицами: «один-ко-многим» и «многие-ко-многим». Помните пример из прошлого урока?

тип связи «один-ко-многим» «многие-ко-многим»
пример собаки и владельцы, породы собак оценки судей
ключевая фраза у каждой собаки может быть ТОЛЬКО ОДИН владелец, но один владелец может иметь НЕСКОЛЬКО собак каждый судья ставит оценки НЕСКОЛЬКИМ собакам, и каждая собака получает оценки от НЕСКОЛЬКИХ судей
что делать? в таблице (tbDog) создаем ДОПОЛНИТЕЛЬНОЕ ПОЛЕ PersonId и записываем туда Id владельца каждой собаки создаем ДОПОЛНИТЕЛЬНУЮ ТАБЛИЦУ tbMark (оценка) и в ней перечисляем попарно: какую оценку поставил такой-то судья такой-то собаке

Иллюстрация к связи «один-ко-многим»:

Иллюстрация к связи «многие-ко-многим»:

Будьте внимательны! Поля-ссылки должны иметь тип ЧИСЛОВОЙ. Если тип будет текстовый, то при попытке установить связь на схеме данных будет возникать ошибка! Поля-ссылки принято именовать так: имя таблицы, на которую идет ссылка + Id, например, поле-ссылка PersonId в таблице tbDog.

4. Режим конструктора
В режиме конструктора мы задаем имена и типы полей. Типы полей нужны для того, чтобы Access в запросах корректно применял встроенные функции (так же, как и в Excel). Помните, пример: 2+3=5, если это числа, и “2” + “3” = “23”, если это строки. Другой пример: встроенная функция для временных переменных Month(12.04.05) = 4 не отработала бы, если бы дата была записана строкой.

Особняком стоит такой тип, как Мастер подстановок. Собственно, он и не является типом. Мастер позволяет устанавливать простейший тип связи между двумя таблицами: «один-ко-многим». Иными словами, он позволяет подставлять в одну таблицу значения из другой. С помощью мастера подстановок удобно, например, подставить в tbDog значения из таблицы с породами. Это будет выглядеть так:

То есть мастер прямо в ячейки таблицы вставит небольшие выпадающие списки, из которых можно будет выбирать нужное значение. Важно понимать, что И В ЭТОМ случае связь между таблицами устанавливается через ID! Просто мастер скрывает от нас техническую сторону дела.

Также на прошлом уроке мы немножко затрагивали правила проектирования схем баз данных. Сегодня мы остановимся на них подробнее и дадим более строгие определения.

ПРАВИЛА ПРОЕКТИРОВАНИЯ БАЗ ДАННЫХ

При проектировании схемы данных следует соблюдать ТРИ ПРАВИЛА:

Правило 1: 1-Я НОРМАЛЬНАЯ ФОРМА

Согласно 1-й нормальной форме, в каждой ячейке располагается минимальная единица информации.

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

С чем связано это требование?
Ответ простой: с тем, что таблицы потом обрабатываются запросами!
Гораздо проще указать поисковое условие tbMark.Exterior > 5, чем искать в длинной строке “ 5, 4, 6 » вхождение в нее нужной подстроки и вылавливать потом ошибки.

То же касается длинных составных значений, например ФИО. Если фамилия, имя и отчество записаны в отдельных ячейках, то мы легко с помощью запросов можем отобразить в зависимости от задачи:

  • фамилию, имя и отчество,
  • только фамилию,
  • фамилию с инициалами,
  • имя отчество и т.п.

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

Также не составит труда выбрать из БД всех жителей Москвы:

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

В дополнение к 1НФ следует сказать еще одну важную мысль: как вы уже знаете, Access позволяет создавать запросы с вычислениями: по дате рождения определять возраст, из имени и отчества делать инициалы и т.п. Поэтому в ячейках таблиц следует указывать лишь ИСХОДНЫЕ данные (даты, стоимость одной единицы товара), и НЕ записывать туда те, которые могут быть вычислены с помощью функций.

Правило 2: ЛОКАЛЬНОСТЬ ХРАНЕНИЯ ДАННЫХ

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

Помните пример с породами? В таблице с собаками регулярно повторяются названия пород. Чтобы не писать двадцать раз «американский кокер-спаниель», мы заводим отдельную таблицу с породами а в таблице с собаками указываем лишь Id породы. (Кстати, какого типа здесь будет связь?)

Таким образом,
а) мы избавляем себя от лишней работы (не нужно набивать много раз одно и то же);
б) если нужно внести изменения, достаточно отредактировать одно поле, а не несколько десятков, а то и сотен записей.

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

Правило 3: ОБЪЕДИНЕНИЕ ТАБЛИЦ

Мы много говорили о том, что нужно разбивать таблицы на несколько (чтобы соблюдать первые два принципа: 1НФ и Локальности хранения данных). Теперь настало время поговорить о том, в каких случаях следует ОБЪЕДИНЯТЬ несколько таблиц в одну.

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

Однако существуют случаи, когда несколько сущностей следует вносить в одну таблицу! Что это за случаи? Это когда несколько сущностей имеют почти идентичные схемы данных (набор полей в таблице).
Например, у нас в выставке собак участвуют не только владельцы собак, но и члены экспертного совета (судьи). Можно было бы создать отдельную таблицу для судей tbExpert, но удобнее записать и их, и владельцев в одну таблицу tbPerson (введя для различения всего одно дополнительное поле IsExpert).

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

Итак, третий принцип формулируется следующим образом:

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

Не нужно бояться, что таблица станет от этого слишком длинной. Базы данных прекрасно работают с ОЧЕНЬ длинными таблицами (я сама работала с базой данных в Access, в которой было чуть более 1 000 000 записей, и при этом Access отлично с ней справлялся!) Студенты разных групп, курсов и факультетов, товары разного вида, книги разных жанров – все они могут и должны быть объединены в одну таблицу (tbStudent, tbGoods, tbBook соответственно) со специальным полем(поями)-меткой: группа, жанр и др.

ИТОГИ

Перечислим еще раз принципы проектирования:

1. 1НФ: в каждой ячейке располагается минимальная единица информации.
2. Локальность хранения данных: если значения в каком-то поле регулярно повторяются, их следует выносить в отдельную таблицу, а в поле оставлять ссылку.
3. Объединение таблиц: если несколько сущностей имеют почти идентичные схемы данных, их следует объединить в одну таблицу.

И не забывайте про правила, о которых мы говорили раньше:

1. У каждой таблицы первое поле – ID типа Счетчик.
2. Правила именования: по-английски без пробелов (каждое слово с большой буквы) + приставка tb…
3. Два типа связей: один-ко-многим (создаем поле-ссылку), многие-ко-многим (создаем дополнительную таблицу).

Теперь перейдем к практике.

Задания

Задание 1 Выберите любые три из пяти предложенных ниже задач и составьте по спискам данных схемы БД. Схемы нарисуйте на бумаге (не обязательно их делать в Access) и принесите с собой на самостоятельную.

1. Голливуд
Культовые фильмы Голливуда.

  1. у нас есть две сущности: люди tbPerson и фильмы tbFilm;
  2. в таблице tbPerson перечислены актеры и режиссеры;
  3. у каждого фильма может быть ТОЛЬКО ОДИН режиссер, но один режиссер может снять НЕСКОЛЬКО фильмов;
  4. в каждом фильме снимается НЕСКОЛЬКО актеров, и один актер может сниматься в НЕСКОЛЬКИХ фильмах.
Читайте также:  Северокавказская семья языков таблица

2. Классный журнал
Преподаватель математики в школе ставит ученикам оценки за работу на уроке. Каждый урок посвящен новой теме.

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

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

5. Сеть автосалонов
Иномарки продаются в сети автосалонов.

Задание 2 Исследуйте типы полей в Access и установите соответствия:

Тип Для чего используется Пример
1 Счетчик длинный текст; в отличие от просто текстового у него нет ограничений по длине, но при этом с ним не работают некоторые встроенные функции стоимость щенков
2 Текстовый денежные значения обрабатываются не совсем так, как числовые (в т.ч. правила округления) фотография собаки
3 Числовой в отличие от просто текстового при щелчке мышью на гиперссылку автоматически открывается окно браузера ID (первое поле таблицы)
4 Денежный OLE (Object Linking and Embedding) в этом поле располагается ссылка на файл любого другого типа: графический, электронную таблицу, документ Word и т.п. e-mail, адрес сайта
5 Дата/Время мастер, который позволяет настраивать связи между таблицами кличка собаки, фамилия владельца, телефонный номер
6 Логический а) числа, над которыми производятся вычисления
б) поля-ссылки на ID из других таблиц
была ли сделана прививка; является ли человек экспертом
7 Гиперссылка уникальный номер каждой записи в таблице история участия собаки в других выставках, ее награды
8 Поле МЕМО а) короткий текст (до 255 символов)
б) числовые значения над которыми НЕ будут производиться вычисления
дата рождения собаки
9 Объект OLE дата и время ID владельцев собак
10 Мастер подстановок поле может иметь только два значения: ИСТИНА или ЛОЖЬ: привита собака или нет, является ли человек экспертом на выставке или просто владельцем оценка судей

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

Получившуюся базу данных вышлите по внутренней почте.

Источник



Готовые базы данных Access. Скачать пример базы данных Access.

Скачать базу данных access Галантерейный магазин

NEW

Скачать базу данных access Галантерейный магазин. Отчёт Продажи за период

Ключевые слова: Скачать базу данных access Галантерейный магазин; база данных; база данных access скачать; access шаблоны базы данных; access база данных Галантерейный магазин; готовая база данных access; создание базы данных; база данных скачать бесплатно; создание структуры базы данных; база данных курсовая; пример базы данных Галантерейный магазин; запросы для базы данных; скачать простую базу данных access; готовая база данных access БД; примеры базы данных информатика; готовая база данных access магазин; готовая база данных access.

Курсовая база данных «Галантерейный магазин» создана в access 2010 и преобразована в access 2003, поэтому откроется в access 2003, 2007, 2010, 2016.

Скачать базу данных access Кадровое агентство

NEW

Скачать базу данных access Кадровое агентство. Форма Иностранные языки

Скачать базу данных access Кадровое агентство; база данных; база данных access скачать; access шаблоны базы данных; access база данных Кадровое агентство; готовая база данных access; создание базы данных; база данных скачать бесплатно; создание структуры базы данных; база данных курсовая; пример базы данных Кадровое агентство; запросы для базы данных; скачать простую базу данных access; готовая база данных access БД ; примеры базы данных информатика; готовая база данных access сотрудники; готовая база данных access бюро трудоустройства.

Курсовая база данных «Кадровое агентство» создана в access 2010 и преобразована в access 2003, поэтому откроется в access 2003, 2007, 2010, 2016.

Скачать базу данных access Учёт платы за пользованием газом

NEW

Скачать базу данных access Учёт платы за пользованием газом. Квартиры без счётчика - отчёт.

Скачать базу данных access Учёт платы за пользованием газом; база данных; база данных access скачать; access шаблоны базы данных; access база данных Учёт платы за пользованием газом; готовая база данных access; создание базы данных; база данных скачать бесплатно; создание структуры базы данных; база данных курсовая; пример базы данных Учёт платы за пользованием газом; запросы для базы данных; скачать простую базу данных access; готовая база данных access БД ; примеры базы данных информатика; готовая база данных access вуз; готовая база данных access Газкомплект.

Курсовая база данных «Учёт платы за пользованием газом» создана в access 2010 и преобразована в access 2003, поэтому откроется в access 2003, 2007, 2010, 2016.

Скачать базу данных access Экспорт сырья

NEW

Скачать базу данных access Экспорт сырья. Отчёт Итоги по странам (общий)

Скачать базу данных access Экспорт сырья; база данных производство; база данных access скачать; access шаблоны базы данных; access база данных Экспорт сырья; готовая база данных access; создание базы данных; база данных скачать бесплатно; создание структуры базы данных; база данных курсовая; пример базы данных Экспорт сырья; запросы для базы данных; скачать простую базу данных access; готовая база данных access БД ; примеры базы данных информатика; готовая база данных access вуз; готовая база данных access Торговля.

Курсовая база данных «Экспорт сырья» создана в access 2010 и преобразована в access 2003, поэтому откроется в access 2003, 2007, 2010, 2016.

Скачать базу данных access Абитуриенты 2

NEW

Скачать базу данных access Абитуриенты. Запрос Отбор бюджетников.

Скачать базу данных access Абитуриенты; база данных студенты; база данных access скачать; access шаблоны базы данных; access база данных Абитуриенты; готовая база данных access; создание базы данных; база данных скачать бесплатно; создание структуры базы данных; база данных курсовая; пример базы данных Абитуриенты; запросы для базы данных; скачать простую базу данных access; готовая база данных access БД ; примеры базы данных информатика; готовая база данных access вуз; готовая база данных access Приёмная комиссия.

Курсовая база данных «Абитуриенты» создана в access 2010 и преобразована в access 2003, поэтому откроется в access 2003, 2007, 2010, 2016.

Скачать базу данных access Пассажирское судоходство

NEW

Скачать базу данных access Пассажирское судоходство. Отчёт Круизы по стране по дате посещения за период

Скачать базу данных access Пассажирское судоходство; база данных работы; база данных access скачать; access шаблоны базы данных; access база данных Пассажирское судоходство; готовая база данных access ; создание базы данных; база данных скачать бесплатно; создание структуры базы данных; база данных курсовая; пример базы данных Пассажирское судоходство; запросы для базы данных; скачать простую базу данных access; готовая база данных access БД ; примеры базы данных информатика; готовая база данных access; готовая база данных access Круизные лайнеры.

Курсовая база данных «Пассажирское судоходство» создана в access 2010 и преобразована в access 2003, поэтому откроется в access 2003, 2007, 2010, 2016.

Скачать базу данных access Телепрограмма

NEW

Скачать базу данных access Телепрограмма

Скачать базу данных access Телепрограмма; база данных работы; база данных access скачать; access шаблоны базы данных; access база данных Телепрограмма; готовая база данных access ; создание базы данных; база данных скачать бесплатно; создание структуры базы данных; база данных курсовая; пример базы данных Телепрограмма; запросы для базы данных; скачать простую базу данных access; готовая база данных access БД; примеры базы данных информатика; готовая база данных access; готовая база данных access Телепрограмма.

Курсовая база данных «Телепрограмма» создана в access 2010 и преобразована в access 2003, поэтому откроется в access 2003, 2007, 2010, 2016.

Скачать базу данных access Торговые операции

NEW

Скачать базу данных access Торговые операции. Запрос Продажи 4 квартала

Скачать базу данных access Торговые операции; база данных работы; база данных access скачать; access шаблоны базы данных; access база данных Торговые операции; готовая база данных access ; создание базы данных; база данных скачать бесплатно; создание структуры базы данных; база данных курсовая; пример базы данных Торговые операции; запросы для базы данных; скачать простую базу данных access; готовая база данных access БД ; примеры базы данных информатика; готовая база данных access; готовая база данных access Торговля.

Курсовая база данных «Торговые операции» создана в access 2010 и преобразована в access 2003, поэтому откроется в access 2003, 2007, 2010, 2016.

Скачать базу данных access Бухгалтерия организации

NEW

Скачать базу данных access Бухгалтерия организации. Отчёт Зарплата по отделам

Скачать базу данных access Бухгалтерия организации; база данных работы; база данных access скачать; access шаблоны базы данных; access база данных Бухгалтерия организации; готовая база данных access Сотрудники; создание базы данных; база данных скачать бесплатно; создание структуры базы данных; база данных курсовая; пример базы данных Бухгалтерия организации; запросы для базы данных; скачать простую базу данных access; готовая база данных access БД Сотрудники; примеры базы данных информатика; готовая база данных access; готовая база данных access Сотрудники.

Курсовая база данных «Бухгалтерия организации» создана в access 2010 и преобразована в access 2003, поэтому откроется в access 2003, 2007, 2010, 2016.

Скачать базу данных access Отдел кадров предприятия

NEW

Скачать базу данных access Отдел кадров предприятия. Форма Образование.

Ключевые слова: Скачать базу данных access Отдел кадров предприятия; база данных работы; база данных access скачать; access шаблоны базы данных; access база данных Отдел кадров предприятия; готовая база данных access Сотрудники; создание базы данных; база данных скачать бесплатно; создание структуры базы данных; база данных курсовая; пример базы данных Отдел кадров предприятия; запросы для базы данных; скачать простую базу данных access; готовая база данных access БД Сотрудники; примеры базы данных информатика; готовая база данных access; готовая база данных access Сотрудники.

Курсовая база данных «Отдел кадров предприятия» создана в access 2010 и преобразована в access 2003, поэтому откроется в access 2003, 2007, 2010, 2016.

Источник

База данных Access. Таблицы в СУБД Microsoft Access

SUBD_Deep_26.3-5020-f454d4.png

В этой статье мы рассмотрим базу данных Access и поговорим об её основном элементе — таблицах. Материал содержит краткие сведения и включает в себя терминологию, свойственную Microsoft Access. Тем не менее описываемые понятия вполне применимы и по отношению к другим реляционным базам данных (БД). Статья рекомендована пользователям Access для Office 365, Access 2016, Access 2019, Access 2013, Access 2007 и Access 2010.

Что представляет собой БД?

Как известно, база данных представляет собой инструмент сбора и структурирования информации. В БД можно хранить данные о людях, заказах, товарах и т. п. Многие БД изначально выглядят как небольшой список в текстовом редакторе либо электронной таблице. Но в связи с увеличением объёма данных, список наполняется лишней информацией, появляются несоответствия, не всё становится понятным. Кроме того, способы поиска и отображения подмножеств данных при использовании обычной электронной таблицы крайне ограничены. Таким образом, лучше заранее подумать о переносе информации в базу данных, созданную в рамках системы управления БД, например, в такую, как Access.

Читайте также:  Таблица менделеева научное открытие

База данных Access — это хранилище объектов. В одной такой базе данных может содержаться более одной таблицы. Представьте систему отслеживания складских запасов с тремя таблицами — это будет одна база данных, а не 3.

Что касается БД Access, то в ней все таблицы сохраняются в одном файле совместно с другими объектами (формами, отчётами, модулями, макросами).

Для файлов БД, созданных в формате Access 2007 (он совместим с Access 2010, Access 2013 и Access 2016), применяется расширение ACCDB, а для БД, которые созданы в более ранних версиях, — MDB. При этом посредством Access 2007, Access 2013, Access 2010 и Access 2016 вы сможете, при необходимости, создавать файлы и в форматах более ранних версий (Access 2000, Access 2002–2003).

Применение БД Access позволяет: • добавлять новые данные в БД (допустим, новый артикул складских запасов); • менять информацию, находящуюся в базе (перемещать артикул); • удалять данные (например, когда артикул продан либо утилизирован); • упорядочивать и просматривать данные разными методами; • обмениваться информацией с другими людьми посредством отчётов, сообщений, эл. почты, глобальной или внутренней сети.

Элементы БД Access

К основным элементам стандартной базы данных Access относят: — таблицы; — формы; — отчёты; — макросы; — запросы; — модули.

В этой статье мы подробно остановимся на таблицах.

Таблицы в БД Access

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

Строки в таблице — это записи, содержащие блоки информации. Каждая запись состоит как минимум из одного поля, причём поля соответствуют столбцам.

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

  1. Это запись, содержащая конкретные данные о конкретном работнике.
  2. Это поле (столбец), содержащее данные об одном из аспектов элемента нашей таблицы (у нас это имя).
  3. Тут мы видим значение поля.

Свойства таблиц и полей в Access

У полей и таблиц есть свойства, позволяющие управлять их работой и характеристиками:

  1. Это свойства таблицы.
  2. Это свойства поля.

В БД Access под свойствами таблицы понимают атрибуты, которые определяют её работу и внешний вид. Свойства таблицы задают в «Конструкторе» на странице свойств таблицы. Допустим, вы можете задать свойство «Режим по умолчанию», если хотите указать, как она должна по умолчанию отображаться.

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

Типы данных в Access

Каждое поле имеет тип данных. Тип определяет данные, которые могут храниться в нём (допустим, вложенные файлы или большие объёмы текста):

Хоть тип данных и является свойством поля, он отличается от других свойств: • задаётся не в области «Свойства поля», а на бланке таблицы; • определяет, какие другие свойства существуют у этого поля; • его нужно указывать при создании поля.

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

Отношения между таблицами в Access

Хотя в каждой таблице хранится информация по отдельному объекту, в БД Access все таблицы обычно между собой связаны. Ниже приведены примеры таблиц в базе данных. Допустим, у нас есть таблица клиентов, которая содержит данные о клиентах и их адреса. Также есть таблица продаваемых товаров с ценами и изображениями товаров. И, разумеется, таблица заказов, необходимая нам, чтобы отслеживать покупки клиентов.

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

Ключи в Access

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

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

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

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

Преимущества использования связей в Access

Ключи обеспечивают раздельное хранение данных в связанных таблицах. Это несёт следующие плюсы: 1. Согласованность. Раз каждый элемент данных заносится в нашу таблицу лишь один раз, снижается вероятность появления несогласованных и неоднозначных данных. То же имя клиента станет храниться лишь в таблице клиентов, а не в разных записях в таблице заказов. 2. Эффективность. Хранить данные в одном месте — значит сэкономить место на жёстком диске. К тому же, данные из небольших таблиц мы сможем извлекать быстрее, чем из больших. Кроме того, если мы не храним данные по разным темам в различных таблицах, у нас часто появляются пустые значения, что неэффективно в плане использования имеющихся ресурсов и, как следствие, приводит к понижению производительности. 3. Простота. Структура базы данных (БД) становится более понятной, если данные по разным темам находятся в различных таблицах.

Вышеописанные связи нужно обдумывать ещё на стадии планирования таблиц — это избавит вас от многих проблем. Что касается БД Access, то тут есть мастер подстановок, помогающий создавать связи. Например, с его помощью вы создадите поле внешнего ключа, если таблица с соответствующим первичным ключом уже существует.

Источник

Таблицы

Сегодня мы подробно поговорим о таблицах в Access.

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

Вспомним, что мы уже знаем о таблицах.
1. Идентификатор (ключ)
Все записи в таблицах перенумерованы. Для этого используется специальное поле (его лучше делать самым первым и называть Id). Тип этого поля – счетчик. Счетчик каждой новой записи автоматически дает новый порядковый номер. Этот номер нельзя удалить, нельзя изменить (попробуйте-ка!).
Если вы удалили из таблицы запись (например с Id = 12 – щенка Тедди, когда он заболел и не смог принимать участия в выставке), то, если он выздоровеет, и вы снова добавите Тедди в таблицу, Id у него будет уже другим, на 1 больше последней записи в таблице.
Это нужно для того, чтобы идентификаторы в одной таблице ни в коем случае НЕ СОВПАДАЛИ. Иначе они перестанут быть идентификаторами!
Как следствие, нельзя, чтобы идентификаторы соответствовали номерам квартиры, выставочными номеркам собак; записи, отсортированные по Id не обязательно должны идти в алфавитном порядке, по возрастанию даты и времени. Иными словами, Id не несут никакого содержательного смысла. Они нужны только для того, чтобы устанавливать СВЯЗИ между записями в таблицах.

2. Стандарты именования
Имена таблиц и полей в таблицах (как и имена запросов, форм, отчетов и макросов) записываются по-английски без пробелов (через нижнее подчеркивание dog_age или каждое слово с большой буквы DogAge). Перед именем таблицы ставится приставка tb… Таким образом, записи становятся легко читаемы (например, tbDog.BirthDate), и не возникает проблем с кодировкой кириллицы.
Надо сказать, что Access не запрещает писать названия кириллицей и с пробелами. Чтобы имена с пробелами не «рассыпались» он автоматически заключает их в квадратные скобки вот так: [Выставка собак].[важная информация 1]. Но выглядит это непрофессионально и затрудняет визуальное восприятие имен.

3. Связи между таблицами
Существует два основных типа связей между таблицами: «один-ко-многим» и «многие-ко-многим». Помните пример из прошлого урока?

Читайте также:  Углеводный индекс продуктов таблица полная

тип связи «один-ко-многим» «многие-ко-многим»
пример собаки и владельцы, породы собак оценки судей
ключевая фраза у каждой собаки может быть ТОЛЬКО ОДИН владелец, но один владелец может иметь НЕСКОЛЬКО собак каждый судья ставит оценки НЕСКОЛЬКИМ собакам, и каждая собака получает оценки от НЕСКОЛЬКИХ судей
что делать? в таблице (tbDog) создаем ДОПОЛНИТЕЛЬНОЕ ПОЛЕ PersonId и записываем туда Id владельца каждой собаки создаем ДОПОЛНИТЕЛЬНУЮ ТАБЛИЦУ tbMark (оценка) и в ней перечисляем попарно: какую оценку поставил такой-то судья такой-то собаке

Иллюстрация к связи «один-ко-многим»:

Иллюстрация к связи «многие-ко-многим»:

Будьте внимательны! Поля-ссылки должны иметь тип ЧИСЛОВОЙ. Если тип будет текстовый, то при попытке установить связь на схеме данных будет возникать ошибка! Поля-ссылки принято именовать так: имя таблицы, на которую идет ссылка + Id, например, поле-ссылка PersonId в таблице tbDog.

4. Режим конструктора
В режиме конструктора мы задаем имена и типы полей. Типы полей нужны для того, чтобы Access в запросах корректно применял встроенные функции (так же, как и в Excel). Помните, пример: 2+3=5, если это числа, и “2” + “3” = “23”, если это строки. Другой пример: встроенная функция для временных переменных Month(12.04.05) = 4 не отработала бы, если бы дата была записана строкой.

Особняком стоит такой тип, как Мастер подстановок. Собственно, он и не является типом. Мастер позволяет устанавливать простейший тип связи между двумя таблицами: «один-ко-многим». Иными словами, он позволяет подставлять в одну таблицу значения из другой. С помощью мастера подстановок удобно, например, подставить в tbDog значения из таблицы с породами. Это будет выглядеть так:

То есть мастер прямо в ячейки таблицы вставит небольшие выпадающие списки, из которых можно будет выбирать нужное значение. Важно понимать, что И В ЭТОМ случае связь между таблицами устанавливается через ID! Просто мастер скрывает от нас техническую сторону дела.

Также на прошлом уроке мы немножко затрагивали правила проектирования схем баз данных. Сегодня мы остановимся на них подробнее и дадим более строгие определения.

ПРАВИЛА ПРОЕКТИРОВАНИЯ БАЗ ДАННЫХ

При проектировании схемы данных следует соблюдать ТРИ ПРАВИЛА:

Правило 1: 1-Я НОРМАЛЬНАЯ ФОРМА

Согласно 1-й нормальной форме, в каждой ячейке располагается минимальная единица информации.

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

С чем связано это требование?
Ответ простой: с тем, что таблицы потом обрабатываются запросами!
Гораздо проще указать поисковое условие tbMark.Exterior > 5, чем искать в длинной строке “ 5, 4, 6 » вхождение в нее нужной подстроки и вылавливать потом ошибки.

То же касается длинных составных значений, например ФИО. Если фамилия, имя и отчество записаны в отдельных ячейках, то мы легко с помощью запросов можем отобразить в зависимости от задачи:

  • фамилию, имя и отчество,
  • только фамилию,
  • фамилию с инициалами,
  • имя отчество и т.п.

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

Также не составит труда выбрать из БД всех жителей Москвы:

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

В дополнение к 1НФ следует сказать еще одну важную мысль: как вы уже знаете, Access позволяет создавать запросы с вычислениями: по дате рождения определять возраст, из имени и отчества делать инициалы и т.п. Поэтому в ячейках таблиц следует указывать лишь ИСХОДНЫЕ данные (даты, стоимость одной единицы товара), и НЕ записывать туда те, которые могут быть вычислены с помощью функций.

Правило 2: ЛОКАЛЬНОСТЬ ХРАНЕНИЯ ДАННЫХ

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

Помните пример с породами? В таблице с собаками регулярно повторяются названия пород. Чтобы не писать двадцать раз «американский кокер-спаниель», мы заводим отдельную таблицу с породами а в таблице с собаками указываем лишь Id породы. (Кстати, какого типа здесь будет связь?)

Таким образом,
а) мы избавляем себя от лишней работы (не нужно набивать много раз одно и то же);
б) если нужно внести изменения, достаточно отредактировать одно поле, а не несколько десятков, а то и сотен записей.

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

Правило 3: ОБЪЕДИНЕНИЕ ТАБЛИЦ

Мы много говорили о том, что нужно разбивать таблицы на несколько (чтобы соблюдать первые два принципа: 1НФ и Локальности хранения данных). Теперь настало время поговорить о том, в каких случаях следует ОБЪЕДИНЯТЬ несколько таблиц в одну.

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

Однако существуют случаи, когда несколько сущностей следует вносить в одну таблицу! Что это за случаи? Это когда несколько сущностей имеют почти идентичные схемы данных (набор полей в таблице).
Например, у нас в выставке собак участвуют не только владельцы собак, но и члены экспертного совета (судьи). Можно было бы создать отдельную таблицу для судей tbExpert, но удобнее записать и их, и владельцев в одну таблицу tbPerson (введя для различения всего одно дополнительное поле IsExpert).

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

Итак, третий принцип формулируется следующим образом:

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

Не нужно бояться, что таблица станет от этого слишком длинной. Базы данных прекрасно работают с ОЧЕНЬ длинными таблицами (я сама работала с базой данных в Access, в которой было чуть более 1 000 000 записей, и при этом Access отлично с ней справлялся!) Студенты разных групп, курсов и факультетов, товары разного вида, книги разных жанров – все они могут и должны быть объединены в одну таблицу (tbStudent, tbGoods, tbBook соответственно) со специальным полем(поями)-меткой: группа, жанр и др.

ИТОГИ

Перечислим еще раз принципы проектирования:

1. 1НФ: в каждой ячейке располагается минимальная единица информации.
2. Локальность хранения данных: если значения в каком-то поле регулярно повторяются, их следует выносить в отдельную таблицу, а в поле оставлять ссылку.
3. Объединение таблиц: если несколько сущностей имеют почти идентичные схемы данных, их следует объединить в одну таблицу.

И не забывайте про правила, о которых мы говорили раньше:

1. У каждой таблицы первое поле – ID типа Счетчик.
2. Правила именования: по-английски без пробелов (каждое слово с большой буквы) + приставка tb…
3. Два типа связей: один-ко-многим (создаем поле-ссылку), многие-ко-многим (создаем дополнительную таблицу).

Теперь перейдем к практике.

Задания

Задание 1 Выберите любые три из пяти предложенных ниже задач и составьте по спискам данных схемы БД. Схемы нарисуйте на бумаге (не обязательно их делать в Access) и принесите с собой на самостоятельную.

1. Голливуд
Культовые фильмы Голливуда.

  1. у нас есть две сущности: люди tbPerson и фильмы tbFilm;
  2. в таблице tbPerson перечислены актеры и режиссеры;
  3. у каждого фильма может быть ТОЛЬКО ОДИН режиссер, но один режиссер может снять НЕСКОЛЬКО фильмов;
  4. в каждом фильме снимается НЕСКОЛЬКО актеров, и один актер может сниматься в НЕСКОЛЬКИХ фильмах.

2. Классный журнал
Преподаватель математики в школе ставит ученикам оценки за работу на уроке. Каждый урок посвящен новой теме.

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

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

5. Сеть автосалонов
Иномарки продаются в сети автосалонов.

Задание 2 Исследуйте типы полей в Access и установите соответствия:

Тип Для чего используется Пример
1 Счетчик длинный текст; в отличие от просто текстового у него нет ограничений по длине, но при этом с ним не работают некоторые встроенные функции стоимость щенков
2 Текстовый денежные значения обрабатываются не совсем так, как числовые (в т.ч. правила округления) фотография собаки
3 Числовой в отличие от просто текстового при щелчке мышью на гиперссылку автоматически открывается окно браузера ID (первое поле таблицы)
4 Денежный OLE (Object Linking and Embedding) в этом поле располагается ссылка на файл любого другого типа: графический, электронную таблицу, документ Word и т.п. e-mail, адрес сайта
5 Дата/Время мастер, который позволяет настраивать связи между таблицами кличка собаки, фамилия владельца, телефонный номер
6 Логический а) числа, над которыми производятся вычисления
б) поля-ссылки на ID из других таблиц
была ли сделана прививка; является ли человек экспертом
7 Гиперссылка уникальный номер каждой записи в таблице история участия собаки в других выставках, ее награды
8 Поле МЕМО а) короткий текст (до 255 символов)
б) числовые значения над которыми НЕ будут производиться вычисления
дата рождения собаки
9 Объект OLE дата и время ID владельцев собак
10 Мастер подстановок поле может иметь только два значения: ИСТИНА или ЛОЖЬ: привита собака или нет, является ли человек экспертом на выставке или просто владельцем оценка судей

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

Получившуюся базу данных вышлите по внутренней почте.

Источник

Adblock
detector