Лого

Взаимодействие с БД

21.09.2024

В этой заметке я постараюсь в очередной раз перенести свои конспекты из Obsidian во что-то более структурированное и обдуманное. Рассмотрю основные команды SQL, которые помогают взаимодействовать с базами данных.

Создание таблицы

Начало начал. Сперва надо создать то, что будем щупать, вертеть и крутить.


                        CREATE TABLE название_таблицы(
                            название_столбца1 тип_данных1 атрибуты_столбца1,
                            название_столбца2 тип_данных2 атрибуты_столбца2,
                            атрибуты_таблицы
                        );
                    

  • Название таблицы - обязательно
  • Название столбца и тип данных - обязательно
  • Атрибуты столбца и атрибуты таблицы - необязательно

Пример создания таблицы можно увидеть пониже.


                        CREATE TABLE med_area(
                            area_num INT,
                            area_address VARCHAR(1000)
                        );
                    

Вставка данных

Таблицу мы сделали. Молодцы-огурцы. Но а как её напичкать нашими секретными данными? Для этого можно воспользовать командой INSERT.


                        INSERT [INTO] имя_таблицы [(список_столбцов)] VALUES (значение1, значениеN);
                    

  • INTO - необязательно
  • Список столбцов - перечисляем необходимые столбцы. Если не указать, то значения будут добавлены во все поля по порядку

Пример. Куда же без него.


                        INSERT INTO doctors (doctor_name, spec, cabinet_num) 
                        VALUES('Вахтин Петр Семенович', 'терапевт', 11);
                    

Также можно сразу несколько записей вставлять.


                        INSERT INTO med_area (area_address)
                        VALUES
                        ('ул. Ленина'),
                        ('ул. Рижская'),
                        ('ул. Вавилова');
                    

Изменение данных

Так, ну я вставил данные, но потом вспомнил что все перепутал и надо кое-что поменять. Как это сделать? Для этого существует команда - UPDATE.


                        UPDATE имя_таблицы
                        SET столбец1 = значение1, столбецN = значениеN
                        [WHERE условие_обновления];
                    

  • SET - указывает наименование столбца и новое значение
  • WHERE - условие, по которому будут выбраны только нужные строки. Если не указать, то применится ко всему

Удаление данных

Ну это просто космос! А допустим у меня есть таблица, но какая-то часть данных в ней мне надоела? Что же мне делать? "Удали просто ненужное" - отвечу я своей второй личности, которая задает вопросы. Для этого используется команда DELETE.


                        DELETE FROM имя_таблицы
                        [WHERE условие_удаления];
                    

Если условие не указано, данные будут удалены из всех строк таблицы. Пример удаления чуть ниже.


                        DELETE FROM talons WHERE doctor_num = 3;
                    

Удаляет строки, где doctor_num = 3. Остальные если попадаются, то она просто игнорирует их.

Полное удаление данных

Команда TRUNCATE также используется для удаления данных из таблицы, но с некоторыми отличиями:


                        TRUNCATE TABLE название_таблицы;
                    

  • Удаляет ВСЕ СТРОКИ из таблицы
  • Данные нельзя восстановить после удаления
  • Выполняется моментально, так как не сохраняет данные в журнал транзакций
  • Счетчик AUTO_INCREMENT обнуляется

Заключение

Немного ознакомился с основными командами и теперь имею некоторое представление для взаимодействия с БД. Эти команды помогут создавать структуры для хранения данных, добавлять новые записи, изменять существующие и удалять ненужные. Остальное в практике и чтобы в мышечной памяти что-то осталось.