Занятие 16. Summary session 4
⚡ Кратко: суть темы
Повторение блока «Таблицы и представления». Ограничения, CREATE TABLE, UPDATE, Views и связка Python + SQL + BI.
PRIMARY KEY,NOT NULL,UNIQUE,CHECK,DEFAULT— основные ограничения.CREATE TABLE,INSERT,UPDATE— основные DDL/DML команды.CREATE VIEW— виртуальная таблица на основе запроса.
Частая ошибка: забыть WHERE в UPDATE.
📖 Ограничения (constraints)
Ограничения определяют, какие значения можно вводить в столбцы. Основные типы:
| Ограничение | Назначение | Пример |
|---|---|---|
PRIMARY KEY |
Уникально идентифицирует каждую строку | product_id INT PRIMARY KEY |
AUTO_INCREMENT |
Автоматически увеличивает значение столбца | product_id INT AUTO_INCREMENT PRIMARY KEY |
NOT NULL |
Запрещает NULL |
product_name VARCHAR(100) NOT NULL |
UNIQUE |
Требует уникальности значений | email VARCHAR(100) UNIQUE |
CHECK |
Проверяет условие для значений | price DECIMAL(8, 2) CHECK (price >= 0) |
DEFAULT |
Значение по умолчанию | category VARCHAR(50) DEFAULT 'General' |
📖 Создание таблицы
Общий шаблон:
CREATE TABLE TableName (
Column1 DataType Constraints,
Column2 DataType Constraints,
...
);
Пример таблицы товаров:
CREATE TABLE products (
product_id INT AUTO_INCREMENT PRIMARY KEY,
product_name VARCHAR(100) NOT NULL,
category VARCHAR(50) DEFAULT 'General',
price DECIMAL(8, 2) CHECK (price >= 0),
stock_quantity INT CHECK (stock_quantity >= 0),
supplier_id INT
);
📖 Оператор UPDATE
Изменяет существующие записи. Всегда используйте WHERE:
UPDATE products
SET stock_quantity = stock_quantity - 3
WHERE product_id = 1;
📖 Представления Views
View — виртуальная таблица на основе SQL-запроса:
CREATE VIEW product_overview AS
SELECT
product_name,
category,
price * stock_quantity AS stock_value,
CASE
WHEN stock_quantity < 20 THEN 'Low Stock'
ELSE 'In Stock'
END AS stock_status
FROM products;
📖 Связь Python, SQL и BI
Современная аналитика строится на связке:
- Python — сбор, обработка и загрузка данных.
- SQL / СУБД — хранение, структурирование и выборка.
- BI-инструменты — визуализация и дашборды.
Views часто используются как слой между базой и BI, чтобы упростить отчёты и скрыть сложность.
📖 Источники данных
Данные обычно попадают в базу не вручную, а через:
- Веб-формы и пользовательские интерфейсы.
- API и интеграции между системами.
- Импорт из файлов (CSV, Excel, JSON, XML).
- Копирование из других баз данных.