Задание 1: STAGE-1
Задание 2: STAGE-2
Задание 3: STAGE-3
Задание 4: STAGE-4
Задание 5: STAGE-5
DeepSeek дал следующее описание проекта и его название, исходя только из 5 .md файлов с заданием:
MiniSQL Engine - это минималистичная реализация SQL-движка на C# с использованием ASP.NET Core, поддерживающая базовые операции с таблицами и данными.
MiniSQL Engine представляет собой веб-сервис, который имитирует работу простой реляционной базы данных. Проект реализует подмножество SQL-команд для создания/удаления таблиц, работы с данными (CRUD операции), а также поддерживает более сложные операции типа JOIN и вложенных запросов.
- Настройка ASP.NET Core проекта
- Реализация механизма завершения работы сервиса через токен
- Создание глобального контекста приложения (шаблон Singleton)
- Базовые endpoint'ы для управления жизненным циклом сервиса
- Создание и удаление таблиц (CREATE TABLE, DROP TABLE)
- Парсинг SQL-запросов для операций с таблицами
- Endpoint'ы для:
- Получения списка таблиц (
GET /api/v1/tables/list) - Получения схемы таблицы (
POST /api/v1/tables/schema) - Выполнения SQL-запросов (
POST /api/v1/query)
- Получения списка таблиц (
- Добавление данных (INSERT)
- Чтение данных (SELECT с поддержкой WHERE, ORDER BY, LIMIT)
- Обновление данных (UPDATE)
- Удаление данных (DELETE)
- Поддержка RETURNING для всех операций изменения данных
- Доработка парсера SQL-запросов
- Добавление обработки различных граничных случаев
- Улучшение обработки ошибок
- Поддержка оператора AS для переименования полей
- Реализация вложенных запросов (подзапросов)
- Поддержка JOIN операций:
- INNER JOIN (стандартный JOIN)
- LEFT JOIN
- RIGHT JOIN
- Язык: C# 10
- Платформа: .NET 6.0
- Архитектура: Веб-сервис на ASP.NET Core
- Сериализация: JSON
- Документация API: Swagger UI
- Обработка SQL: Кастомный парсер и интерпретатор
- Поддерживаемые типы: BOOLEAN, INTEGER, FLOAT, STRING, SERIAL
- Схема таблиц с информацией о колонках (тип, PRIMARY KEY, NULLABLE, DEFAULT)
- Механизм автоматического инкремента для SERIAL полей
- Все значения в ответах API возвращаются в строковом виде
- Четкое разделение парсинга SQL и выполнения команд
- Поддержка разных режимов работы (Development/Production)
- Защита от небезопасных операций в Production
Проект MiniSQL Engine представляет собой отличную учебную платформу для понимания принципов работы реляционных баз данных и реализации собственного SQL-движка.