Skip to content

Это маленькая база данных на 1 таблицу с зашитой схемой в код (по ТЗ)

Notifications You must be signed in to change notification settings

Chamber6821/c-my-db

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Что такое c-my-db?

Это маленькая база данных на 1 таблицу с зашитой схемой в код (по ТЗ)

Как оно работает

БД парсит данные из файла в формате ini

Запросы принимаются из stdin в формате ini. (имя секции = имя запроса)

Результат каждого запроса выводится в stdout в формате ini. (имя секции совпадает с именем запроса)

Иммутабельность данных

Каждая строка в БД иммутабельна, т.к. это проще реализовать на коленке

Что бы изменить строку нужно:

  • полностью select её
  • изменить любым удобным способом
  • сделать add со старым id

ID строк

Неявно добавляет каждой строке поле id

Аналогично PRIMIRY KEY с AUTO_INCREMENT в SQL

Хотелки

Запрос-ответ

Сейчас БД предварительно читает все запросы и только потом из выполняет. Хочу что бы БД сразу отвечала на запрос, что бы можно было бесконечно подкидывать новые запросы по мере выполнения

Что для этого нужно?

Найти/сделать парсер ini, который сообщает о начале и конце секции

Убрать бойлерплейт для каждого поля

Нужна какай-нибудь генерация кода по каждому полю в таблице, что бы было меньше повторов

About

Это маленькая база данных на 1 таблицу с зашитой схемой в код (по ТЗ)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published