"Информатика (базовый уровень) (в 2 частях)", Под ред. Макаровой Н.В.
Таблица — основной объект базы данных, в котором хранятся сведения об однотипных объектах: учениках, книгах, товарах или заказах. Она состоит из столбцов-полей и строк-записей. Поля задают, какие свойства сохраняются и какие данные допустимы, а записи содержат конкретные значения. Для однозначного различения записей выбирают ключевое поле. При создании таблицы также задают её имя, структуру и способы представления данных.
Текст подготовлен нейронной сетью по теме параграфа и не заменяет учебник — важные факты и формулировки сверяйте с ним.
Таблица — объект базы данных, предназначенный для хранения сведений об однотипных объектах. Например, таблица «Ученики» содержит данные о школьниках, а не одновременно о книгах и заказах. Такое ограничение делает структуру понятной и облегчает поиск нужной информации.
Поле — столбец таблицы, содержащий одно свойство объектов и имеющий имя и тип данных. Полями могут быть «Фамилия», «Дата рождения» или «Количество книг». Они показывают, какие характеристики нужно хранить и в каком виде вводить значения.
Запись — строка таблицы, содержащая сведения об одном объекте. В записи ученика рядом находятся его фамилия, класс, дата рождения и другие значения. Записи заполняют заранее заданную полями структуру конкретными данными.
Ключевое поле — поле, значения которого однозначно идентифицируют каждую запись. Если ключом служит номер ученика, по нему можно отличить одного человека от другого даже при одинаковых фамилиях. Ключ нужен для точного поиска, изменения записи и связи таблиц между собой.
Таблица строится из полей и записей, потому что базе данных нужны одновременно описание структуры и конкретное содержимое. Поля отвечают на вопрос, какие свойства хранить, а записи — какие значения имеют эти свойства у разных объектов. Благодаря такому разделению одну и ту же структуру можно многократно заполнять без изменения набора столбцов.
Имя и тип поля ограничивают допустимое содержимое ячеек. Например, поле «Дата рождения» должно принимать даты, а поле «Количество книг» — целые числа, чтобы программа могла сравнивать и вычислять их. Это защищает таблицу от случайного ввода слов вместо чисел или несуществующих значений и сохраняет данные пригодными для обработки.
Для каждой таблицы желательно выбирать ключевое поле, потому что одинаковые значения в обычных полях встречаются часто. Значения ключа должны быть уникальными, не должны меняться без необходимости и обычно не должны оставаться пустыми. Если естественного уникального признака нет, создают идентификатор, например порядковый номер записи.
При создании таблицы задают её имя, состав полей, типы данных, ключевое поле и параметры представления. Имя помогает найти таблицу среди других, состав полей описывает объект, а типы задают правила ввода и обработки. Параметры представления определяют, как будут отображаться заголовки, ширина столбцов и другие элементы интерфейса.
Одна таблица должна описывать одно множество однотипных объектов, иначе в ней появляются повторения и несогласованные сведения. Например, данные об учениках лучше отделить от данных о классах или книгах, а связь установить через идентификаторы. Такое разделение уменьшает объём повторяющейся информации и позволяет исправлять её в одном месте.
| Свойство | Что определяет | Пример для таблицы «Ученики» |
|---|---|---|
| Имя таблицы | Как таблица называется и для каких сведений предназначена | Ученики |
| Назначение таблицы | Какое множество однотипных объектов описывается | Сведения о школьниках |
| Имя поля | Какое свойство объектов хранится в столбце | Фамилия, Класс, Дата рождения |
| Тип данных поля | Какие значения допустимы и как их обрабатывать | Текстовый, числовой, дата |
| Ключевое поле | Как однозначно отличить одну запись от другой | Код ученика |
| Запись | Сведения об одном конкретном объекте | Иванов, 10А, 15.03.2009 |
| Количество полей и записей | Размер структуры и число сохранённых объектов | 4 поля и 28 записей |
При проектировании таблицы удобно пройти по строкам этой таблицы сверху вниз. Сначала определяют назначение и имя, затем перечисляют поля, назначают им типы и выбирают ключ. После заполнения проверяют, соответствует ли каждая запись одному объекту, а каждое значение — своему полю.
Нужно спроектировать таблицу для хранения сведений о книгах школьной библиотеки, выбрать поля, их типы и ключевое поле. Сначала определим, какие свойства описывают одну книгу, а затем проверим, какое поле сможет различать экземпляры. Одного названия недостаточно: разные издания могут иметь одинаковое название.
Ответ: получится таблица «Книги» с пятью полями, где «Код книги» является ключевым. Такая структура хранит свойства одной книги и позволяет быстро найти нужную запись по уникальному номеру.
Нужно определить типы для полей «Фамилия», «Дата рождения», «Количество книг» и «Наличие учебника». Ориентируемся не на внешний вид значения, а на смысл данных и действия, которые с ними будут выполняться. Например, запись «12» может выглядеть как текст, но по смыслу быть числом.
Ответ: типы полей — текстовый, дата, числовой и логический соответственно. Такое решение сохраняет смысл данных и позволяет программе выполнять с ними правильные операции.
В таблице «Заказы» в одной строке указано несколько товаров, отсутствует уникальный идентификатор, а даты и суммы введены как текст. Такая структура затрудняет подсчёт стоимости, поиск заказа и обработку отдельных товаров. Нужно разделить повторяющиеся сведения и привести поля к подходящим типам.
Ответ: исправленная структура содержит уникальный код заказа, одну товарную позицию в каждой записи состава и корректные типы даты и суммы. После этого заказы можно сортировать, суммировать и связывать с таблицей товаров.
Поле и запись иногда смешивают, считая полем строку. Ошибка возникает из-за того, что в обычной речи «поле» может означать отдельную область, но в таблице поле — столбец, а запись — строка. Проверить себя можно по вопросу: столбец описывает одно свойство, а строка — один объект?
Фамилию или название нередко выбирают ключом, потому что они кажутся удобными для поиска. Однако одинаковые фамилии и названия встречаются, поэтому запись нельзя будет однозначно отличить. Проверьте предполагаемый ключ: среди его значений не должно быть повторов и пустых ячеек.
Иногда всем полям назначают текстовый тип, чтобы не разбираться с настройками. Тогда даты сортируются как слова, суммы нельзя надёжно складывать, а логические значения приходится проверять вручную. Сопоставьте тип с действиями: числа должны вычисляться, даты — сравниваться по времени, а признаки — храниться логически.
В одно поле записывают несколько характеристик или несколько объектов, например «математика, физика» в поле «Предмет». Так нарушается однородность данных и усложняется поиск отдельного значения. Проверьте, соответствует ли ячейка одному свойству одного объекта; если нет, разделите поле или создайте связанную таблицу.
До изучения таблиц нужны представление о назначении базы данных, способах представления информации и различии между объектом и его свойствами. Это помогает понять, почему ученик является объектом, а фамилия и класс — его свойствами. Без такого различия трудно правильно подобрать поля.
Поля, записи и ключи используются при создании форм, запросов и сортировке данных. Ключевые поля также позволяют устанавливать связи между таблицами, например между заказами и товарами. Поэтому правильная структура таблицы влияет на дальнейшую работу с базой.
Тема связана с проектированием реляционных баз данных и нормализацией. Нормализация — это упорядочивание структуры, при котором уменьшаются повторы и устраняются зависимости, создающие ошибки. Её результатом становятся отдельные, логично связанные таблицы.
Чем поле отличается от записи?
Поле — это столбец таблицы, описывающий одно свойство объектов, например фамилию или дату рождения. Запись — строка, в которой собраны значения всех полей для одного конкретного объекта.
Можно ли сделать ключом поле «Фамилия»?
Обычно нельзя, потому что фамилии у разных людей могут совпадать. Ключом подходит поле с уникальными и неповторяющимися значениями, например специально созданный идентификатор ученика.
Зачем указывать тип данных для каждого поля?
Тип данных определяет, какие значения можно вводить и как с ними работать. Например, даты можно сортировать по времени, числа — складывать, а логические значения — проверять как «да» или «нет».
Может ли таблица не иметь ключевого поля?
Технически некоторые таблицы могут существовать без ключа, но их записи трудно однозначно различать и связывать с другими таблицами. Поэтому при проектировании ключевое поле желательно предусматривать всегда.
Почему повторяющиеся данные рекомендуется выносить в отдельную таблицу?
Так уменьшается дублирование, а исправлять сведения становится проще: изменение выполняется в одном месте. Отдельные таблицы можно связать ключами и получать нужную информацию запросами.
Объект «таблица» и его свойства