Skip to content
will14smithPublic

About

Database Engine in C# from scratch

Resources

Stars

0 stars

Watchers

1 watching

Forks

Latest commit

 

History

152 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Database

A toy database engine implemented in C# to explore how an RDBMS is implemented. Safe to say: don't use this in production!

Features

  • REPL (at least a basic one)
  • SELECT
      • / column as alias
    • FROM a single table
    • optional WHERE (literal, column, equality)
    • optional ORDER BY (ASC/DESC)
  • INSERT INTO
    • optional list of columns
    • list of value tuples
  • DELETE
    • FROM a table
    • optional WHERE
  • EXPLAIN
  • MVCC (multi-version concurrency control, initial start for ACID)

TODO

  • Store schema in the heap
  • Merge index into the heap (one file per table)
  • Support joins

Unsupported

  • DDL (table schemas are defined through code)
  • Friendly API (just a bunch of low level ones)

Inspired by

About

Database Engine in C# from scratch

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages