Выбираем имя таблицы
В качестве имени таблицы подходящим вариантом будет имя сущности во множественном числе, например, «Ученики», «Курсы», «Потоки», «Оценки». Множественное число применяем потому, что в таблицах хранятся данные о многих учениках, курсах, потоках и оценках.
Определяем список столбцов и их тип
В столбцах хранятся различные данные: имя ученика — это строка, ключ — целое число, начало занятий задаётся датой. При создании таблицы надо определить подходящие типы данных для каждого столбца.
В СУБД SQLite используются пять типов данных.
Данные | Тип данных | Описание |
Нет значения | NULL | NULL — «ничего». Это непустая строка или ноль, NULL — отсутствие значения. |
Целое число | INTEGER | Целое число со знаком, например, 1, 56, -764. |
Дробное число | REAL | Число с плавающей точкой, например, 34.568, -4.2 |
Строка, текст | TEXT | Строка текста, например, «Базы данных» |
Двоичные данные, медиа | BLOB | Этот тип предназначен для хранения данных в исходном формате. В столбце такого типа сохраняется, например, изображение. |
Таблица 1. Типы данных SQLite
Определяем дополнительные условия для столбцов
В соответствии с логикой приложения часто требуется указать дополнительные условия для некоторых столбцов. Например, сохранять данные об ученике без его фамилии имеет мало смысла. Поэтому при создании таблицы определяется специальное условие, разрешающее сохранение только непустого значения фамилии, оно выдаёт ошибку, если предпринимается попытка вставить строку без фамилии ученика. Такие условия называются ограничениями, так как мы ограничиваем использование данных в столбце только некоторыми допустимыми значениями.
Общепринятое название | Синтаксис SQL | Назначение ограничения |
Ограничение на пустое (NULL) значение | NOT NULL | Гарантирует, что в ячейку вставится непустое значение |
Ограничение уникальности | UNIQUE | Гарантирует уникальность значений в пределах таблицы |
Значение по умолчанию | DEFAULT | Определяет значение по умолчанию для столбца, если оно не задано явным образом |
Таблица 2. Ограничения данных