2.0.2 • Published 4 years ago

mykv v2.0.2

Weekly downloads
-
License
MIT
Repository
github
Last release
4 years ago

MyKV

npm.io npm.io npm.io

MyKV started out as a wrapper for only MySQL but with the power of knex we support most sql variations.

How to use/connect

See knexjs connecting

const { MyKV } = require('mykv');
// or
import { MyKV } from 'mykv';

const db = new MyKV({
    connection: {
        host: '',
        database: '',
        username: '',
        password: '',
    }
});

db.connect()
    .then(() => console.log('Connected'))
    .catch((e) => console.error(`Unable to connect: ${e.message}`));

Methods

These are the methods used on your created db

  • Get

    await db.get(key);

    const item = await db.get('1234');

    TypeScript:

    interface Result {
        id: string;
        username: string;
    }
    
    const item = await db.get<Result>('1234');
  • Set

    await db.set(key, value);

    await db.set('1234', { id: '1234', username: 'GHOST' });
  • Delete

    await db.del(key);

    await db.del('1234');
  • Has

    await db.has(key);

    const has = await db.has('1234'); // true or false
  • Clear

    await db.clear();

    await db.clear();
  • Keys

    await db.keys(limit?: number); Returns all keys in the db, you can optionally provide a limit of the number of keys returned

    const keys = await db.keys();
    const tenKeys = await db.keys(10); // Optional limit
  • Values

    await db.values(limit?: number); Returns all items in the db (without their keys), you can optionally provide a limit of the number of values returned

    const values = await db.values();
    const tenValues = await db.values(10); // Optional limit
  • Entries

    await db.entries(limit?: number); Returns all keys and values in an array, like Map.prototype.entries

    const entries = await db.entries();
    const tenEntries = await db.entries(10); // Optional limit

Support