# SQLite

## API Reference

The sqlite module allows for manipulation and querying of sqlite databases.

    sqlite = imports.sqlite;

The SQLite module provides a selection of status enums, to be used as the return values of functions. For meanings, consult the SQLite C documentation.

    sqlite.[OK, ERROR, INTERNAL, PERM ABORT, BUSY,
            LOCKED, NOMEM, READONLY, INTERRUPT, CORRUPT,
            NOTFOUND, FULL, CANTOPEN, PROTOCOL, EMPTY,
            SCHEMA, TOOBIG, CONSTRAINT, MISMATCH, MISUSE,
            NOLFS, AUTH, FORMAT, RANGE, NOTADB, ROW, DONE]

## Examples

Below are several examples of using the Seed sqlite module. For additional resources, consult the examples/ folder of the Seed source

This demonstrates creating a new table, populating it, and querying it for results

    sqlite = imports.sqlite;
    var db = new sqlite.Database("people.db");
    db.exec("create table people (key INTEGER PRIMARY KEY, name TEXT," +
                                 "age INTEGER, phone TEXT);");
    db.exec("insert into people(name, age, phone) " +
            "values('John Smith', 24, '555-123-4567');");

    function cb_print_phone(results) {
        print(results.phone);
    }

    db.exec("select * from people where name='John Smith';", cb_print_phone);
    db.close();