Go to file
2014-11-03 16:50:40 -05:00
docs Update package.json and docs 2014-11-03 11:12:27 -05:00
lib Add sqlite3 adapter, and change initialization slightly 2014-11-03 10:59:18 -05:00
node_modules Add sqlite3 modules for tests 2014-11-03 10:59:34 -05:00
tests Add sqlite3 adapter, and change initialization slightly 2014-11-03 10:59:18 -05:00
.gitignore Simplify grunt file and update .gitignore 2014-11-03 16:50:40 -05:00
.npmignore Update some metadata to publish to npm 2014-10-28 09:46:27 -04:00
.travis.yml Add a verbose flag to mysql import to see where it is failing 2014-10-27 16:41:32 -04:00
Gruntfile.js Simplify grunt file and update .gitignore 2014-11-03 16:50:40 -05:00
package.json Update package.json and docs 2014-11-03 11:12:27 -05:00
README.md Add sqlite3 adapter, and change initialization slightly 2014-11-03 10:59:18 -05:00

#CI-Node-query

A node query builder for various SQL databases, based on CodeIgniter's query builder.

Build Status

Supported adapters

  • mysql
  • mysql2
  • pg
  • dblite
  • sqlite3

Installation

npm install ci-node-query

Basic use

var nodeQuery = require('ci-node-query');

var connection = ... // Database module connection 

// Three arguments: database type, database connection, database connection library
var query = nodeQuery.init('mysql', connection, 'mysql2');

// You can also retrieve the instance later
query = nodeQuery.getQuery();

query.select('foo')
	.from('bar')
	.where('x', 3)
	.orWhere({y: 2})
	.join('baz', 'baz.boo = bar.foo', 'left')
	.orderBy('x', 'DESC')
	.limit(2, 3)
	.get(function(/* Adapter dependent arguments */) {
		// Database module result handling
	});

Additional help

  • Generated documentation is in the docs/ folder
  • tests/query-builder-base.js contains a lot of usage examples
  • The tests/adapters folder contains examples of how to set up a connection for the appropriate database library
  • The documentation generated for the latest dev build is also Available