modern ORM and framework development SQL database
Project description
####### SPyderSQL #######
.. image:: https://img.shields.io/pypi/l/SPyderSQL.svg?style=flat-square :target: https://opensource.org/licenses/MIT :alt: MIT License
Документация по использованию SQL-запросов
Базовые принципы SQL-запросов
SQL (Structured Query Language) используется для работы с базами данных. Основные задачи: извлечение, вставка, обновление, удаление данных и управление структурой базы данных. Запросы строятся из ключевых слов (например, SELECT, INSERT), которые определяют действие, и указания условий, например, WHERE или ORDER BY.
Виды запросов
1. DDL (Data Definition Language).
-
CREATE– создание таблицы или базы данных. Пример:.. code:: sql
CREATE TABLE {name_table} ({columns and types});
Создаёт таблицу.
-
ALTER– изменение таблицы. (Переименовать таблицу. Добавьте новый столбец в таблицу). Пример:.. code:: sql
ALTER TABLE {name_table} ADD {one_column and type};
Добавляет новый столбец.
-
DROP– удаление таблицы или базы. Пример:.. code:: sql
DROP TABLE {name_table};
Удаляет таблицу.
2. DML (Data Manipulation Language).
-
SELECT– выборка данных из таблицы. Пример:.. code:: sql
SELECT {columns} FROM {name_table} WHERE age > 18; Выводит имена пользователей старше 18 лет.
-
INSERT– добавление записей в таблицу. Пример:.. code:: sql
INSERT INTO {name_table} ({columns}) VALUES ('Иван', 25); Добавляет новую запись.
-
UPDATE– обновление записей. Пример:.. code:: sql
UPDATE {name_table} SET age = 30 WHERE name = 'Иван'; Изменяет возраст на 30 для пользователя Иван.
-
DELETE– удаление записей. Пример:.. code:: sql
DELETE FROM {name_table} WHERE age < 18; Удаляет всех пользователей младше 18 лет.
3. DCL (Data Control Language).
-
GRANT– предоставление прав. Пример:.. code:: sql
GRANT SELECT ON {name_table} TO 'admin'; Даёт права на просмотр данных пользователю admin.
-
REVOKE– удаление прав. Пример:.. code:: sql
REVOKE SELECT ON {name_table} FROM 'admin'; Удаляет права.
4. TCL (Transaction Control Language).
BEGIN– начало транзакции.COMMIT– подтверждение изменений.ROLLBACK– отмена изменений.
Применение в конкретных случаях
-
Создание аналитического отчета. Используем
SELECTс функциями группировки, например,GROUP BYиSUM. Подсчёт выручки по регионам. -
Добавление новых записей в CRM-систему.
INSERTиспользуется для записи информации о новых клиентах. -
Обновление устаревших данных.
UPDATEподходит для массового изменения значений, например, изменения цен в каталоге товаров. -
Оптимизация базы.
ALTERиDROPприменяются для управления структурой таблиц, удаления ненужных колонок или индексов.
Примеры использования SQL-запросов в реальных сценариях. Ниже приведены запросы с пояснениями, где и как их можно применять.
1. SELECT id, name FROM users WHERE status = 'active' AND age = '30' ORDER BY name ASC LIMIT 10
Цель:
Получение отфильтрованного списка пользователей из таблицы users на основе заданных условий,
а именно проверка статуса на 'active' и возраст ранвый 30 лет. А так же фильтрация по алфавиту.
Примеры использования:
- Административные панели: Отображение списка активных пользователей с пагинацией в интерфейсе администратора.
- Клиентские интерфейсы: Вывод пользователей (например, активных клиентов) в веб- или мобильном приложении.
- Отчёты: Формирование выборки пользователей для анализа демографических данных или выполнения бизнес-метрик.
2. INSERT INTO users (name, age, status) VALUES ('John Doe', '30', 'active')
Цель:
Добавление новой записи в таблицу users.
Примеры использования:
- Регистрация пользователей: Сохранение данных нового пользователя после регистрации.
- Миграция данных: Импорт данных из внешних источников при интеграции систем.
- Автоматическое обновление данных: Динамическое добавление данных в базу в рамках автоматизированных процессов.
3. UPDATE users SET name = 'Jane Doe' WHERE id = '1'
Цель:
Обновление определённых полей в таблице users на основе условия.
Примеры использования:
- Обновление профиля пользователя: Изменение информации о пользователе через интерфейс управления профилем.
- Коррекция данных: Исправление некорректных или неполных записей в базе данных.
- Синхронизация данных: Актуализация данных из внешних источников, таких как CRM или ERP-системы.
4. DELETE FROM users WHERE status = 'inactive'
Цель:
Удаление записей из таблицы users, соответствующих заданным критериям.
Примеры использования:
- Очистка базы данных: Удаление неактивных или устаревших записей для оптимизации производительности.
- Соответствие законодательству: Удаление данных пользователей по их запросу (например, в рамках GDPR).
- Автоматическая очистка: Периодическое удаление неактивных учётных записей для упрощения структуры базы данных.
Общие области применения
1. Веб-приложения:
- CRUD-операции для управления данными пользователей (например, регистрация, вход в систему, обновление профиля).
- Динамическая фильтрация, сортировка и пагинация данных в пользовательских интерфейсах.
2. Административные панели:
- Углублённая фильтрация и модификация данных для внутренних команд.
- Автоматизация процессов обновления и очистки данных для поддержания их целостности.
3. CRM/ERP системы:
- Управление данными клиентов, включая массовое обновление и синхронизацию.
- Интеграция данных между различными системами.
4. Аналитика и отчёты:
- Извлечение данных для создания отчётов или передачи в системы бизнес-аналитики (BI).
- Фильтрация данных для анализа демографических и бизнес-метрик.
5. Мобильные приложения:
- Работа серверной части, поддерживающей пользовательские операции, такие как управление профилем, поиск пользователей, обновления в реальном времени.
Краткое описание CRUD операций
+------------+---------------------------------------------------------+-----------------------------------+
| Операция | Пример запроса | Цель |
+============+=========================================================+===================================+
| Create | INSERT INTO users (...) VALUES (...) | Добавление новых записей. |
+------------+---------------------------------------------------------+-----------------------------------+
| Read | SELECT ... FROM ... WHERE ... ORDER BY ... LIMIT ...| Получение и фильтрация данных. |
+------------+---------------------------------------------------------+-----------------------------------+
| Update | UPDATE ... SET ... WHERE ... | Изменение существующих данных. |
+------------+---------------------------------------------------------+-----------------------------------+
| Delete | DELETE FROM ... WHERE ... | Удаление ненужных записей. |
+------------+---------------------------------------------------------+-----------------------------------+
Эти SQL-запросы являются основой операций с базами данных и критически важны для построения надёжных и масштабируемых систем. Используйте их как базовые блоки для управления данными в ваших приложениях!
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file SPyderSQL-0.1.1.tar.gz.
File metadata
- Download URL: SPyderSQL-0.1.1.tar.gz
- Upload date:
- Size: 13.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
feae6bfa7f06ddfb77d2fc611e1dcf03e1b8d02a76f702c55b18b8c217ab0dfa
|
|
| MD5 |
bab3d2a2bdeb62715483daca5598823c
|
|
| BLAKE2b-256 |
200a36b9a4bc1781c0bdb8e727e774193624bf561e2cff58f9d9c4a3520dcc85
|
File details
Details for the file SPyderSQL-0.1.1-py3-none-any.whl.
File metadata
- Download URL: SPyderSQL-0.1.1-py3-none-any.whl
- Upload date:
- Size: 12.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
369720610d565835a92c530ccd335dd576ea2dd4fd5bfeabc5b92e1860f295a2
|
|
| MD5 |
009b9fde958657a22ef5467525d825ea
|
|
| BLAKE2b-256 |
589f14fd0d4d2692b340596765e7919ad8ab797a852793694e6b92dd8dc757be
|