46.4.0 • Published 5 months ago

slonik-sql-tag-raw v46.4.0

Weekly downloads
1,545
License
BSD-3-Clause
Repository
github
Last release
5 months ago

slonik-sql-tag-raw

NPM version Canonical Code Style Twitter Follow

Slonik SQL tag for constructing dynamic queries.

Warning

There are no known use cases for generating queries using raw that aren't covered by nesting bound sql expressions or by one of the other existing query building methods. raw exists only as a mechanism to execute externally stored static queries (e.g. queries stored in files).

Usage

import {
  raw,
} from 'slonik-sql-tag-raw';

raw

(
  sql: string,
  values?: $ReadOnlyArray<PrimitiveValueExpressionType>
) => RawSqlTokenType;

Raw/ dynamic SQL can be inlined using raw, e.g.

sql`
  SELECT 1
  FROM ${raw('"bar"')}
`;

Produces:

{
  sql: 'SELECT 1 FROM "bar"',
  values: []
}

The second parameter of the raw can be used to bind positional parameter values, e.g.

sql`
  SELECT ${raw('$1', [1])}
`;

Produces:

{
  sql: 'SELECT $1',
  values: [
    1
  ]
}

Named parameters

raw supports named parameters, e.g.

sql`
  SELECT ${raw(':foo, :bar', {bar: 'BAR', foo: 'FOO'})}
`;

Produces:

{
  sql: 'SELECT $1, $2',
  values: [
    'FOO',
    'BAR'
  ]
}

Named parameters are matched using /[\s,(]:([a-z_]+)/g regex.

46.3.0

5 months ago

46.2.0

7 months ago

46.4.0

5 months ago

45.6.0

1 year ago

45.5.0

1 year ago

46.1.0

10 months ago

46.0.1

11 months ago

45.4.1

1 year ago

45.4.0

1 year ago

45.3.0

1 year ago

45.2.0

1 year ago

45.1.0

1 year ago

45.0.0

1 year ago

45.2.1

1 year ago

44.0.0

1 year ago

40.2.5

1 year ago

42.0.0

1 year ago

40.2.4

1 year ago

43.0.8

1 year ago

43.0.7

1 year ago

43.0.6

1 year ago

43.0.5

1 year ago

43.0.4

1 year ago

43.0.3

1 year ago

43.0.2

1 year ago

43.0.1

1 year ago

43.0.0

1 year ago

2.0.0

3 years ago

1.1.4

3 years ago

1.1.3

4 years ago

1.1.2

4 years ago

1.1.1

4 years ago

1.1.0

4 years ago

1.0.2

5 years ago

1.0.3

4 years ago

1.0.1

6 years ago

1.0.0

6 years ago