SQLite - Команды: Дружеское руководство для начинающих

Здравствуйте, стремящиеся к знаниям энтузиасты баз данных! Я рад стать вашим проводником в увлекательное путешествие в мир команд SQLite. Как某人, кто уже много лет teaches computer science, я могу告诉你, что SQLite resembles a friendly puppy в мире баз данных - легко подойти, весело играть и невероятно верен, как только ты его узнаешь. Так что, погружаемся в это!

SQLite - Commands

Понимание команд SQLite

Прежде чем мы углубимся в детали, давайте на минутку поймем, что такое команды SQLite. Представьте их как язык, который вы используете для общения с вашей базой данных SQLite. Так же, как вы можете использовать английский язык, чтобы попросить библиотекаря найти для вас книгу, вы используете команды SQLite, чтобы попросить вашу базу данных хранить, retrieve, или манипулировать данными.

Основные команды SQLite

Давайте начнем с самых распространенных команд SQLite. Я люблю называть их "хлебом и маслом" SQLite - вы будете использовать их все время!

Команда Описание Пример
CREATE TABLE Создает новую таблицу CREATE TABLE students (id INTEGER PRIMARY KEY, name TEXT, age INTEGER);
INSERT Добавляет новые данные в таблицу INSERT INTO students (name, age) VALUES ('Alice', 20);
SELECT Получает данные из таблицы SELECT * FROM students;
UPDATE Модифицирует существующие данные UPDATE students SET age = 21 WHERE name = 'Alice';
DELETE Удаляет данные из таблицы DELETE FROM students WHERE name = 'Alice';

Давайте разберем каждую из этих команд с примерами:

CREATE TABLE

CREATE TABLE students (
id INTEGER PRIMARY KEY,
name TEXT,
age INTEGER
);

Эта команда создает новую таблицу под названием "students". Это как если бы вы устанавливали новый файловый ящик в вашем офисе. Каждый студент будет иметь ID (который уникален, как номер социального страхования), имя и возраст.

INSERT

INSERT INTO students (name, age) VALUES ('Alice', 20);
INSERT INTO students (name, age) VALUES ('Bob', 22);

Эти команды добавляют новых студентов в нашу таблицу. Это как если бы вы заполняли индексные карточки и клали их в файловый ящик.

SELECT

SELECT * FROM students;

Эта команда получает все данные из таблицы students. Это как если бы вы открывали файловый ящик и смотрели на все индексные карточки сразу.

SELECT name FROM students WHERE age > 21;

Эта команда более конкретна - она только получает имена студентов, которые старше 21 года. Это как если бы вы просили своего помощника достать только индексные карточки студентов, которые достаточно стары для питья (в США, по крайней мере!).

UPDATE

UPDATE students SET age = 21 WHERE name = 'Alice';

Эта команда изменяет возраст Alice на 21. Может быть, это ее день рождения! Это как если бы вы пошли к карточке Alice и обновили ее возраст с помощью ручки.

DELETE

DELETE FROM students WHERE name = 'Bob';

Эта команда удаляет Bob из таблицы students. Возможно, он graduated? Это как если бы вы достали карточку Bob из файлового ящика и порвали ее.

Форматирование вывода

Теперь, когда мы рассмотрели основы, давайте поговорим о том, как сделать наш вывод красивым. В конце концов,有什么意义 в том, чтобы иметь这么多 данных, если мы не можем представить их красиво?

Команда .mode

SQLite имеет особую команду под названием .mode, которая изменяет способ отображения вывода. Вот некоторые из самых полезных режимов:

Режим Описание
column Отображает вывод в столбцах
line Отображает данные каждой строки на отдельных строках
csv Выводит данные в формате CSV
html Выводит данные в виде HTML-таблицы

Давайте посмотрим, как это работает:

.mode column
SELECT * FROM students;

Это отобразит наши данные о студентах в аккуратных столбцах, что делает их легко читаемыми.

.mode line
SELECT * FROM students;

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

.mode csv
SELECT * FROM students;

Этот выводит данные в формате, который легко импортировать в программное обеспечение для работы с электронными таблицами, такое как Excel.

Команда .header

Другая полезная команда для форматирования - .header. Когда она установлена на ON, она отображает имена столбцов в верхней части вашего вывода.

.header ON
.mode column
SELECT * FROM students;

Это покажет ваши данные в столбцах с заголовками, что делает их crystal clear, что представляет собой каждый фрагмент данных.

Таблица sqlite_master

Теперь давайте заглянем за кулисы и посмотрим, как SQLite отслеживает все наши таблицы и индексы. Он делает это с помощью especial table под названием sqlite_master.

Чтобы viewed содержимое sqlite_master, вы можете использовать эту команду:

SELECT * FROM sqlite_master;

Это покажет вам все таблицы и индексы в вашей базе данных, а также SQL, использованный для их создания. Это как если бы у вас была карта вашей всей базы данных!

Вот что означает каждая колонка в sqlite_master:

Колонка Описание
type Тип объекта (таблица, индекс, представление или триггер)
name Имя объекта
tbl_name Таблица, с которой связан объект
rootpage Номер страницы корня для этого объекта
sql SQL-запрос, использованный для создания объекта

Понимание sqlite_master похоже на обладание X-ray vision для вашей базы данных. Оно позволяет вам видеть, как все структурировано и связано.

Заключение

И вот мы и arrivé, друзья! Мы отправились в путешествие через основы команд SQLite, научились делать наш вывод красивым и даже заглянули под капот в таблицу sqlite_master. Помните, учение SQLite похоже на обучение езде на велосипеде - сначала это может казаться неустойчивым, но с практикой вы быстро начнете ездить по своим базам данных!

Продолжайте экспериментировать, продолжайте запрашивать и, самое главное, продолжайте получать удовольствие от данных. Before you know it, вы станете mago SQLite в вашем кругу друзей, удивляя всех своими базовыми данными. Счастливого кодирования!

Credits: Image by storyset