deno.com

Usage in Deno

import * as mod from "node:sqlite";

Deno compatibility

This module has been added in Deno v2.2.

The node:sqlite module facilitates working with SQLite databases. To access it:

import sqlite from 'node:sqlite';

This module is only available under the node: scheme. The following will not work:

import sqlite from 'sqlite';

The following example shows the basic usage of the node:sqlite module to open an in-memory database, write data to the database, and then read the data back.

import { DatabaseSync } from 'node:sqlite';
const database = new DatabaseSync(':memory:');

// Execute SQL statements from strings.
database.exec(`
  CREATE TABLE data(
    key INTEGER PRIMARY KEY,
    value TEXT
  ) STRICT
`);
// Create a prepared statement to insert data into the database.
const insert = database.prepare('INSERT INTO data (key, value) VALUES (?, ?)');
// Execute the prepared statement with bound values.
insert.run(1, 'hello');
insert.run(2, 'world');
// Create a prepared statement to read data from the database.
const query = database.prepare('SELECT * FROM data ORDER BY key');
// Execute the prepared statement and log the result set.
console.log(query.all());
// Prints: [ { key: 1, value: 'hello' }, { key: 2, value: 'world' } ]

Classes #

c
DatabaseSync

This class represents a single connection to a SQLite database. All APIs exposed by this class execute synchronously.

c
StatementSync

This class represents a single prepared statement. This class cannot be instantiated via its constructor. Instead, instances are created via thedatabase.prepare() method. All APIs exposed by this class execute synchronously.

Interfaces #

Namespaces #

N
constants
No documentation available

    Type Aliases #

    T
    SupportedValueType
    No documentation available

      Variables #

      v
      constants.SQLITE_CHANGESET_ABORT

      Abort when a change encounters a conflict and roll back database.

        v
        constants.SQLITE_CHANGESET_OMIT

        Conflicting changes are omitted.

          v
          constants.SQLITE_CHANGESET_REPLACE

          Conflicting changes replace existing values.