Skip to content

The fastest and simplest library for SQLite3 in Node.js.

License

Notifications You must be signed in to change notification settings

bengotow/better-sqlite3

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

better-sqlite3 Build Status

The fastest and simplest library for SQLite3 in Node.js.

  • Full transaction support
  • Geared for performance and efficiency
  • Easy-to-use synchronous API (faster than an asynchronous API... yes, you read that correctly)
  • 64-bit integer support (invisible until you need it)

Installation

npm install --save better-sqlite3

Usage

var Database = require('better-sqlite3');
var db = new Database('foobar.db', options);

db.on('open', function () {
	var row = db.prepare('SELECT * FROM users WHERE id=?').get(userId);
	console.log(row.firstName, row.lastName, row.email);
});

Why should I use this instead of node-sqlite3?

  • node-sqlite3 uses asynchronous APIs for tasks that don't wait for I/O. That's not only bad design, but it wastes tons of resources.
  • node-sqlite3 exposes low-level (C language) memory management functions. better-sqlite3 does it the JavaScript way, allowing the garbage collector to worry about memory management.
  • better-sqlite3 is simpler to use, and it provides nice utilities for some operations that are very difficult or impossible in node-sqlite3.
  • better-sqlite3 is much faster than node-sqlite3 in most cases, and just as fast in all other cases.

Documentation

License

MIT

About

The fastest and simplest library for SQLite3 in Node.js.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Languages

  • JavaScript 55.3%
  • C++ 42.8%
  • C 1.4%
  • Python 0.5%