tsqljs
A minimal sql generator for nodejs and sql server
Get Started
$ npm install tsqljs --save
// Require the modulevar sql = ;
Examples
Select
// { text: "select * from users", values: [] }sql; // {text: "select id from users", values: [] }sql; // { text: "select id, name from users", values: [] }sql;
Where
// { text: "select * from users where id = @1", values: [1] }sql; // { text: "select * from users where firstName = @1 and lastName = @2", values: ['Johnny', 'Appleseed'] }sql; // { text: "select * from users where firstName = @1 or lastName = @2", values: ['Johnny', 'Appleseed'] }sql;
Insert
// { text: "insert into users (firstName, lastName) values (@1, @2)", values: ['Johnny', 'Appleseed'] }sql;
Update
// { text: "update users set firstName = @1 where firstName = @2", values: ['Sally', 'Johnny'] }sql; // { text: "update users set salary = @1, house = @2 where job = @3", values: ['billions', 'private island', 'CEO'] }sql;
Delete
// { text: "delete from users where firstName = @1", values: ['Johnny'] }sql;
Output
// { text: "insert into users (firstName, lastName) output inserted.* values (@1, @2)", values: ['Johnny', 'Appleseed'] }sql; // { text: "delete from users output deleted.* where firstName = @1", values: ['Johnny'] }sql
Order
// { text: "select * from users order by createdAt desc", values: [] }sql; // { text: "select * from users order by createdAt desc, id asc", values: [] }sql;
Offset/Fetch
// { text: "select * from users order by createdAt desc offset 0 rows fetch next 10 rows only", values: [] }sql; // { text: "select * from users order by createdAt desc offset 10 rows fetch next 10 rows only", values: [] }sql;
Run the Tests
$ npm test