0.24.25 • Published 3 years ago
@triptease/sql-template-postgres v0.24.25
Sql Template
This is yet another SQL tagged template for Typescript/Javascript
Why another library?
- Typescript first
- Functional/Immutable
- Super simple implementation (the main SQL function is 3 lines of code)
- Full escaping of identifiers and values
- Plugable to any DB (currently only Postgres @triptease\sql-template-postgres )
- Automatic support for prepareStatement naming (Postgres)
Installation
npm install @triptease/sql-template @triptease/sql-template-postgres
Usage
import {SQL, id} from "@triptease/sql-template";
import {statement} from "@triptease/sql-template-postgres";
client.query(statement(SQL`select * from ${id(table)} where name = ${name}`));
Cheatsheet
Core (@triptease/sql-template)
function | Description |
---|---|
SQL | The main function to create tagged templates for SQL (DB agnostic) |
text (alias raw ) | Input raw SQL without any escaping (use with care) |
id / ids | Input dynamic identifiers into SQL (escaped as needed) |
value (optional) / values (alias spread ) | Input one or more values into SQL (escaped as needed) |
Postgres (@triptease/sql-template-postgres)
function | Description |
---|---|
statement | Converts DB agnostic SQL template into postgres statement |
prepareStatement | Converts DB agnostic SQL template into postgres prepare statement |
debugQuery | Used to debug a query (use with care) |
use with care -> Used incorrectly you can open yourself up to SQL injection
Extending
It is incredibly simple to extend to other DBs, have a look at the postgres implementation.
0.24.25
3 years ago
0.23.24
3 years ago
0.22.23
3 years ago
0.21.22
3 years ago
0.20.21
3 years ago
0.19.20
3 years ago
0.18.19
3 years ago
0.17.18
3 years ago
0.16.17
3 years ago
0.18.16
3 years ago
0.15.13
3 years ago
0.14.12
3 years ago
0.13.11
3 years ago
0.10.10
3 years ago
0.9.9
3 years ago
0.6.6
3 years ago
0.3.4
3 years ago