0.1.0 • Published 1 year ago

artbase v0.1.0

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

.github/workflows/publish.yml

Artbase

Artbase makes it easier to write sql queries in javascript. You can use it to write queries in a more readable way, and to write queries that are easier to maintain.

Table of contents

Installation

npm install artbase

Minimal example

import ArtBase from 'artbase';

interface User {
	id: number;
	name: string;
	email: string;
	salt: string;
	password_hash: string;
	picture: string;
	isAdmin: boolean;
	created_at: Date;
	updated_at: Date;
}

let db = new ArtBase({
    host: 'localhost',
    port: 3306,
    user: "artbase",
    password: "XXXXXXXX",
    database: 'artbase_test',
});

let data = await db.select<User>(['name', 'email'], {id: 6}, 'user');
if(!data) console.log('No data found');
if(data) console.log(data); // returns User[]

Query examples

For all examples, we assume that User interface is defined & we have a db instance of ArtBase.

import ArtBase from 'artbase';

interface User {
  id: number;
  name: string;
  email: string;
  salt: string;
  password_hash: string;
  picture: string;
  isAdmin: boolean;
  created_at: Date;
  updated_at: Date;
}

const db = new ArtBase({
    host: 'localhost',
    port: 3306,
    user: "artbase",
    password: "XXXXXXXX",
    database: 'artbase_test',
    debug: true, // default undefined
});

Select queries

// Select all columns from table
let data = await db.select<User>(null, {id: 6}, 'user');
if(!data) console.log('No data found');
if(data) console.log(data); // returns User[]

Update queries

// Update a single row
let data = await db.update<User>({name: 'John Doe'}, {id: 6}, 'user');
if(!data) console.log('No data found');
if(data) console.log(data); // returns OkPacket

Insert queries

// Insert a single row
let data = await db.insert<User>({
  name: "Arthur",
  email: "artbase@example.com",
  isAdmin: true,
  created_at: new Date(),
}, "user");

if(!data) console.log('No data found');
if(data) console.log(data); // returns OkPacket

Delete queries

// Delete a single row
let data = await db.delete<User>({id: 6}, 'user');
if(!data) console.log('No data found');
if(data) console.log(data); // returns OkPacket
0.1.0

1 year ago

0.0.9-beta

1 year ago

0.0.8-beta.4.2

1 year ago

0.0.8-beta.4

1 year ago

0.0.8-beta.3

1 year ago

0.0.8-beta.2

1 year ago

0.0.8-beta.1

1 year ago

0.0.7-beta

1 year ago

0.0.6-beta

1 year ago

0.0.5-beta

1 year ago

0.0.4-beta

1 year ago

0.0.3-beta

1 year ago

0.0.2-beta

1 year ago

0.0.1-beta

1 year ago