Команды с точкой (дот-команды)

Команды с точкой (дот-команды)

Вероятно, вы обратили внимание, что мы открыли базу данных с использованием команды с точкой. Такие команды не считаются командами языка запросов SQL и используются только в СУБД SQLite. Другое название таких команд — дот-команды (dot — точка).

Начнём с таблицы курсов. Исходная структура выглядит следующим образом:

Ключ курса Название курса Количество уроков
  Базы данных  
  Linux. Рабочая станция  
  Основы Python  

 

Таблица 4. Таблица курсов

Очевидное и подходящее имя для таблицы базы данных — «Курсы». В большинстве современных проектов для именования таблиц и столбцов используются слова английского языка. Это связано с тем, что компании и проекты часто интернациональны, заказчики также могут быть из разных стран. Имя таблицы курсов определим как courses.

Важно! Применять транслит (например, kursi) нельзя, так как это выглядит непрофессионально.

Проанализируем таблицу и определим тип данных и набор ограничений для каждого столбца.

Для ключевого столбца подойдёт тип INTEGER, для него также надо задать ограничение первичного ключа PRIMARY KEY и признак автоинкремента AUTOINCREMENT. А для столбца первичного ключа используется имя id (identifier — идентификатор).

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

Для столбца «Количество уроков» подойдёт тип данных INTEGER.

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

Имя столбца Тип данных Ограничения
id INTEGER PRIMARY KEY AUTOINCREMENT
name TEXT NOT NULL UNIQUE
lessons_amount INTEGER  

 

Таблица 5. Столбцы таблицы courses

Теперь у нас есть все данные, чтобы скомпоновать команду CREATE TABLE.

CREATE TABLE courses (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT NOT NULL UNIQUE, lessons_amount INTEGER);

 

Результат выполнения команды выглядит следующим образом:

sqlite> CREATE TABLE courses (...> id INTEGER PRIMARY KEY AUTOINCREMENT,...> name TEXT NOT NULL UNIQUE,...> lessons_amount INTEGER...>); sqlite>

 

Проверим, что мы действительно создали таблицу:

sqlite>.tables courses sqlite>

 

Чтобы получить более полную информацию о таблице, используем команду.schema:

sqlite>.schema courses CREATE TABLE courses ( id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT NOT NULL UNIQUE, lessons_amount INTEGER ); sqlite>

 




double arrow
Сейчас читают про: