Simple database engine created with golang just for fun.
Note: Currently query based db not working properly, any kind of contributions are welcome.
Create cli (querydb)Execute query file (querydb)- implement writing data (querydb)
- implement b-tree for reading data (querydb)
Run simple key value db from command line:
go run main.go mapdb-cli
Run query on command line:
go run main.go cli
Run query from file
go run main.go run file.sql
-
Database oparations
- Create database
create db [blog]
- Drop database
drop db [blog]
- Select database
set db [blog]
- Create database
-
Document oparations
-
Create document:
create doc [user]
-
Insert data into document:
insert [user] {firstName} 'sojeb' {lastName} 'sikder'
-
In the first place go-base takes query. Then go-base engine splits query into statement using semi-clone (;) seperator. Each statements goes to tokenizer for generating tokens. All the tokens goes to perser. Perser perse the statement with brackets, quotation delimiter etc. And all the parsed data goes to main operation unit for processing.