xale-db 1.0
minimal SQL engine, written in c++
Loading...
Searching...
No Matches
Overview

XaleDB is a minimal SQL database engine.

checkout technical doc: xale-db: Main Page

**/!\ Linux only** — Windows support is not implemented yet with OpenSSL. The project builds and runs exclusively on Linux.

Dependencies

Build

mkdir -p build
cd build
cmake ..
make

or

cmake -B ./build
cmake --build ./build

or using autorun.sh

Run app

Server:

./build/xale-db-server

Client (CLI):

./build/xale-db-cli

In CLI use: !help for some quick tips.

Usage

Detailed doc is available on: xale-db: SQL commands usage

Features:

  • Basic SQL commands: CREATE TABLE, INSERT, SELECT, UPDATE, DELETE
  • File-based storage
  • Client-server architecture

Not Implemented Features:

  • Advanced SQL commands and features
  • Multiple commands in one query
  • Concurrency control
  • Indexing
  • Transactions

Commands examples

CREATE TABLE xaleUser (id INT, name STRING, age INT);

Query OK, table created


INSERT INTO xaleUser VALUES (1, "Alice", 30);

Query OK, 1 row inserted


SELECT * FROM xaleUser

| id | name | age | |-—|----—|--—| | 1 | Alice | 30 |

2 rows in set


SELECT * FROM xaleUser;

| id | name | age | |-—|----—|--—| | 1 | Alice | 31 |


DELETE FROM xaleUser WHERE id = 1;

Query OK, 1 row deleted


The UPDATE is not implemented yet.

Run tests

./build/xale-db-tests

License

This project is licensed under the GNU GENERAL PUBLIC LICENSE Version 3 - see the [LICENSE](LICENSE) file for details.

Author

axdelafuen