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