- Notifications
You must be signed in to change notification settings - Fork2
An optimised, document-based SQL database
License
NotificationsYou must be signed in to change notification settings
QSmally/QDB
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
QDB is a synchronous database module reliant on JavaScript object-documents with multiple levels of optimisation built into it.
- Non-blocking;
- Optimised memory cache;
- Schema objects and automatic migration;
- Selection and transaction wrappers;
- Connection pools with external thread support.
npm install QSmally/QDB
constQDB=require("qdatabase");// ...
The main interface for interacting with QDB.
constservice=newQDB.Connection(path,options?);
A SQL transaction manager.
// Instantiates a transaction within the database. It is required// to call 'commit' or 'rollback' on the returned Transaction.consttransaction=service.transaction();// Perform changes in the connection...transaction.commit();// ortransaction.rollback();
An unchanged piece of the database in memory.
// Aggregate with certain instructions, like joining tables,// ordering them and regrouping them by a property.constusers=service.select().join(projects,"UserId","Projects").order(user=>Object.keys(user.Projects).length,QDB.descending).group("Rank");
The library integrates a CLI for interacting with QDB deployments.
npm install -g QSmally/QDB
$ qdb make Instances.qdb$ qdb Development.qdb create Users$ qdb Production.qdb vacuum
This module is licensed underApache 2.0.
About
An optimised, document-based SQL database
Topics
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Uh oh!
There was an error while loading.Please reload this page.