Skip to content

aharabara/helio_db

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HelioDB todo list.

Stage 1

  • Table definition query
    • Base query
    • Field types

Stage 2

  • Data selection query
    • Single table
    • Base query
    • Specific fields

Stage 3

  • Data modification query
    • Insert
    • Where clause
    • Delete
    • Update

Refactoring

  • Restructure
  • Simplify
  • Docs

Stage 4

  • Data modification queries transaction
    • Insert only if all is valid
    • Update only if all is valid
    • Delete only if all is valid

Stage 5

  • Data selection query
    • Multiple tables

Stage 6

  • Table modification query
    • Specific fields

Refactoring

  • Restructure
  • Simplify
  • Docs

Stage 7

  • Table definition query
    • Data storing according to table definition

Stage 8

Database entity

  • Allow multiple databases
  • Add user management
  • Add user authentication

Stage 9

  • Field nullability
  • Reference to another table field type.

Refactoring

  • Restructure
  • Simplify
  • Docs

Stage 10

  • Multiple queries per request
[{<query>}, {<query>}, {<query>}].

Stage 11

  • Transactions?

Glossaries

Storage - table, that has definition and data that match this definition

Database - collection of storages

Examples

Selection :

{
    "select" : {
        "storage" : "<storage name>",
        "fields"  : ["<fields-1>", "<fields-2>"]
    }
}

Definition:

{
    "define" : {
        "storage" : "<storage name>",
        "fields"  : {
            "<field name>" : "<integer|string|float>"
            ...
        }
    }
}

Insertion:

{
    "insert" : {
        "storage" : "<storage name>",
        "data" : [
            {"<field-1>": "<value>", "<field-2>": "<value>"},
            {"<field-1>": "<value>", "<field-2>": "<value>"},
        ]
    }
}

About

Learning Rust creating simple database.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages