Coder Social home page Coder Social logo

jthuraisamy / sqlite-wrapper Goto Github PK

View Code? Open in Web Editor NEW

This project forked from shin-/sqlite-wrapper

1.0 3.0 2.0 113 KB

A small wrapper on node-sqlite3 providing simple bindings to most commonly used SQLite functions in standard applications.

License: Other

JavaScript 100.00%

sqlite-wrapper's Introduction

sqlite-wrapper

A small wrapper on node-sqlite3 providing simple bindings to most commonly used SQLite functions in standard applications.

Installation

npm install sqlite-wrapper

Usage

var db = require('sqlite-wrapper')('/tmp/foo.db');

Creating tables

var tableName = 'people';

db.createTable(tableName, {
        'id': {
            type: 'INTEGER',
            primary: true,
            notnull: true
        },
        'name': {
            type: 'TEXT',
            notnull: true,
            unique: true,
            default: "'John Doe'"
        },
        'city_id': {
            type: 'INTEGER',
            notnull: true,
            ref: 'cities'
        }
    }, callback);

Basic CRUD

// Single insertion
db.insert(tableName, {
        name: 'Donald Knuth',
        city_id: 42
    }, callback);

// Multiple inserts (bulk)
db.insertAll(tableName, [
        { name: 'Dennis Richie', city_id: 23 },
        { name: 'Bjarne Stoustrup', city_id: 347 }
    ], callback);

// Update
db.update(tableName, 'name=?', ['Donald Knuth'], {city_id: 378 }, callback);

// Remove
db.remove(tableName, 'city_id=?', ['666'], callback);

// Select
db.select(tableName, 
    {'cities': 'cities.id=people.city_id' },
    { 'cities.name': 'city_name', 'people.name': 'person_name' },
    'people.id IS NOT NULL',
    null,
    callback,
    'people.name DESC',
    100,
    false
);

// Select with single result
db.selectOne(tableName,
    null,
    ['name'],
    'name LIKE ?',
    ['%Donald%'],
    callback
);

Shortcut method (common tasks)

// Find by id
db.find(tableName, 3, callback);

// List all elements in table
db.list(tableName, callback);

// Update by id
db.updateById(tableName, 3, { city_id: 42 }, callback);
// OR
db.updateById(tableName, { id: 3, city_id: 42 }, callback);

// Remove by id
db.removeById(tableName, 3, callback);

sqlite-wrapper's People

Contributors

jthuraisamy avatar shin- avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.