New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

promised-sqlite3

Package Overview
Dependencies
Maintainers
1
Versions
9
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

promised-sqlite3

A wrapper arround sqlite3 node.js package to use promise

  • 2.0.1
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
1.7K
decreased by-33.07%
Maintainers
1
Weekly downloads
 
Created
Source

promised-sqlite3

npm

A thin wrapper for sqlite3 database that expose an async API.

Install

Note: sqlite3 is marked as a peer dependency, you must also install it.

npm install promised-sqlite3 sqlite3

Usage

AsyncDatabase is a wrapper that expose an async version of the sqlite3.Database's API.

Async API

The following methods of sqlite3.Database are available as async methods in AsyncDatabase :

  • open
  • close
  • run
  • get
  • all
  • each
  • exec

These methods accept the same arguments as their sync version except for the callback one. Refer to the sqlite3's API reference for further information on their usage.

The rest of the API

AsyncDatabase only exposes the async methods listed above. You can access to the sqlite3.Database object with the AsyncDatabase.inner property (see example below).

Example

const { AsyncDatabase } = require("promised-sqlite3");

(async () => {
  try {
    // Create the AsyncDatabase object and open the database.
    const db = await AsyncDatabase.open("./db.sqlite");

    // Access the inner sqlite3.Database object to use the API that is not exposed by AsyncDatabase.
    db.inner.on("trace", (sql) => console.log("[TRACE]", sql));

    // Run some sql request.
    await db.run(
      "CREATE TABLE IF NOT EXISTS foo (id INTEGER PRIMARY KEY AUTOINCREMENT, a TEXT NOT NULL, b TEXT)"
    );
    await db.run("INSERT INTO foo (a, b) VALUES (?, ?)", "alpha", "beta");
    await db.run("INSERT INTO foo (a, b) VALUES ($goo, $hoo)", {
      $goo: "GOO !",
      $hoo: "HOO :",
    });
    await db.run("INSERT INTO foo (a, b) VALUES (?, ?)", [
      "Value of a",
      "Value of b",
    ]);

    // Read database.
    const row = await db.get("SELECT * FROM foo WHERE id = ?", 2);
    const rows = await db.all("SELECT * FROM foo");
    await db.each("SELECT * FROM foo WHERE id > ?", 5, (row) =>
      console.log(row)
    );

    // Close the database.
    await db.close();
  } catch (err) {
    console.error(err);
  }
})();

Keywords

FAQs

Package last updated on 10 Apr 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc