Convert Sqlite3 tables to JSON
npm install --save sqlite-json-export
- Migrate to a Promise based API
- Extract all tables
Create an instance of sqlite-json.
Example:
const SqliteJsonExport = require('sqlite-json-export');
let exporter = new SqliteJsonExport('example.db');
The path to an SQLite database or a sqlite3 client instance.
Type: sqlite3.Database
or string
Example:
const SqliteJsonExport = require('sqlite-json-export');
const sqlite3 = require('sqlite3');
const db = new sqlite3.Database('./mydb.sqlite3');
const exporter = new SqliteJsonExport('example.db');
Export JSON from a specified table, and use it in the given callback.
Example:
exporter.json('select * FROM myTable', (err, json) => {
// handle error or do something with the JSON
// "[{"foo": 1}, {"foo": 2}, {"foo": 3}]"
});
An optional list of columns to output.
Type: Array
Example:
exporter.json({table: 'myTable' columns: ['foo']}, (err, json) => {
// "[{"foo": 1}, {"foo": 2}, {"foo": 3}]"
});
An optional column name.
By default, the result is an JSON array of objects. If key
is given, a JSON object is returned, each row keyed to the given column value.
Type: string
Example:
exporter.json('myTable', {key: 'foo'}, (err, json) => {
// "{"1": {"foo": 1}, "2": {"foo": 2}, "3": {"foo": 3}}"
});
A table to address with the columns
, and where
options.
Type: string
A where clause to add to the query.
Type: string
Example:
exporter.json({table: 'myTable', where: 'foo > 1'}, (err, json) => {
// "[{"foo": 2}, {"foo": 3}]"
});
List all tables in the current database.
Example:
exporter.tables((err, tables) => {
// tables === ['foo', 'bar', 'baz']
});
Save the contents of a table to the specified output file.
Example:
exporter.save('table_name', 'data/table_name.json', (err, data) => {
// Optionally do something else with the JSON.
});