Skip to content

serverless-plus/database

Repository files navigation

Serverless Database Tool

npm NPM downloads Status

Serverless database tool.

Feature

  • Reconnect, it can reconnect automatically after the connection fails
  • Clear Zoombie Connections, it can auto clear the zoombie connections
  • Transaction Rollback, support customize rollback for transaction

Support

Support database dirver:

  • MySQL
  • PostgreSQL

Usage

$ npm i @slsplus/database --save

Use with Mysql

Before you use mysql, you should insall mysql2 dependency:

$ npm i mysql2 --save

Then you can use it as below:

import { Mysql } from '@slsplus/database';

async function example() {
  const db = new Mysql.Database(
    {
      host: 'localhost',
      port: 3306,
      user: 'root',
      password: 'root',
      multipleStatements: true,
    },
    {
      debug: true,
    },
  );

  // insert
  await db.query({
    sql: `
      INSERT INTO users SET ?
    `,
    values: {
      name: 'test',
      email: 'test@test.com',
      site: 'test.com',
    },
  });
  /**
   * return {"fieldCount":0,"affectedRows":1,"insertId":1,"info":"","serverStatus":3,"warningStatus":0}
   */

  // close current connection
  await db.end();
}

Examples

examples

License

MIT License

Copyright (c) 2020 Serverless Plus