1.0.2 • Published 5 years ago
flosql v1.0.2
FloSQL
FloSQL is a package for interpolating SQL queries with immediate acting response functions. Currently, only PostgreSQL and MySQL are supported.
Usage
Before you begin querying your DB, create a .env
file containing the database information and run a source .env
in the root project directory.
For example:
export DB_SERVER="{ mysql || postgres }"
export DB="your_db_name"
export DB_USER="your_db_username"
export DB_PASS="your_db_password"
export DB_HOST="localhost"
export DB_PORT="3306"
Once that's complete, import the flow module into your project and create a new Engine.
const { Engine } = require("flowsql"),
engine = new Engine();
Use the asynchronous init()
function to initiate said engine into a new variable. db
for example.
var db = await engine.init();
// or
engine.init()
.then(db => {
// Use db
})
.catch(err => {
// Uh oh
});
Create a chain object. This will include SQL queries followed by handler functions.
var chain = [
`show tables`,
r => {
// Create table if no user table
if(r.length === 0)
return 'create table user(username varchar(10))';
},
`insert into user(username) values('foo')`,
r => {
// Log the SQL response from the above query
console.log(r);
},
`select * from user`,
r => {
console.log(r[0].username); // 'test_user'
}
]
Execute your chain object with Engine. All SQL / Handler outputs will be returned in an array by the asynchronous db.execute()
function.
var log = await db.execute(chain);
// or
db.execute(chain)
.then(log => {
// Do something
})
.catch(err => {
// Whoops
});