@spinajs/orm-sql 2.0.481 → 2.0.484

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,11 +1,69 @@
1
1
  # `@spinajs/orm-sql`
2
2
 
3
- > TODO: description
3
+ The generic SQL layer for [`@spinajs/orm`](../orm): concrete, dialect-neutral statements and
4
+ compilers, plus `SqlDriver` — the base class every dialect driver extends.
5
+
6
+ You rarely install it directly. It arrives as a dependency of
7
+ [`@spinajs/orm-sqlite`](../orm-sqlite), [`@spinajs/orm-mysql`](../orm-mysql) or
8
+ [`@spinajs/orm-mssql`](../orm-mssql).
9
+
10
+ ## What it provides
11
+
12
+ - **`SqlDriver`** — implements `OrmDriver.execute()` in terms of one abstract method,
13
+ `executeOnDb(stmt, params, context)`. A dialect driver only has to know how to send a string
14
+ with bindings to its server.
15
+ - **Statements** — `SqlWhereStatement`, `SqlJoinStatement`, `SqlColumnStatement`,
16
+ `SqlInStatement`, `SqlExistsQueryStatement` and the rest.
17
+ - **Compilers** — one per query shape, from `SqlSelectQueryCompiler` to
18
+ `SqlTableHistoryQueryCompiler`.
19
+ - **Converters** — `SqlDatetimeValueConverter`, `SqlBooleanValueConverter`,
20
+ `SqlTimeValueConverter`, `SqlSetConverter`.
21
+
22
+ `SqlDriver.resolve()` registers all of it into the driver's own child DI container, so a dialect
23
+ overrides only what genuinely differs.
4
24
 
5
25
  ## Usage
6
26
 
27
+ ```ts
28
+ import { SqlDriver } from '@spinajs/orm-sql';
29
+ import { QueryContext, ServerResponseMapper } from '@spinajs/orm';
30
+ import { Injectable } from '@spinajs/di';
31
+
32
+ @Injectable('orm-driver-mydb')
33
+ export class MyDbOrmDriver extends SqlDriver {
34
+ public async executeOnDb(stmt: string, params: unknown[], _context: QueryContext) {
35
+ return this.withReconnect(() => myClient.query(stmt, params));
36
+ }
37
+
38
+ public resolve() {
39
+ super.resolve();
40
+ // Mandatory: no generic implementation exists for either of these.
41
+ this.Container.register(MyServerResponseMapper).as(ServerResponseMapper);
42
+ this.Container.register(MyTableExistsCompiler).as(TableExistsCompiler);
43
+ }
44
+
45
+ // ... connect / disconnect / ping / supportedFeatures / tableInfo
46
+ // ... plus the six transaction primitives
47
+ }
7
48
  ```
8
- const ormSql = require('@spinajs/orm-sql');
9
49
 
10
- // TODO: DEMONSTRATE API
50
+ ## Documentation
51
+
52
+ Full documentation lives in **[docs/](docs/)**.
53
+
54
+ | | Page |
55
+ | --- | --- |
56
+ | 01 | [Overview](docs/01-overview.md) |
57
+ | 02 | [Compilers](docs/02-compilers.md) |
58
+ | 03 | [Statements](docs/03-statements.md) |
59
+ | 04 | [Writing a driver](docs/04-writing-a-driver.md) |
60
+
61
+ See also [the core's architecture page](../orm/docs/12-architecture.md) for how a query becomes
62
+ SQL, end to end.
63
+
64
+ ## Development
65
+
66
+ ```bash
67
+ npm test # compiles builders and asserts on the SQL — no database required
68
+ npm run build
11
69
  ```
@@ -1,5 +1,39 @@
1
- import { LimitBuilder, DropTableQueryBuilder, AlterColumnQueryBuilder, TableCloneQueryCompiler, OnDuplicateQueryBuilder, IJoinCompiler, DeleteQueryBuilder, IColumnsBuilder, IColumnsCompiler, ICompilerOutput, LimitQueryCompiler, IGroupByCompiler, InsertQueryBuilder, IWhereBuilder, IWhereCompiler, OrderByBuilder, QueryBuilder, SelectQueryBuilder, UpdateQueryBuilder, SelectQueryCompiler, TableQueryCompiler, TableQueryBuilder, ColumnQueryBuilder, ColumnQueryCompiler, IQueryBuilder, OrderByQueryCompiler, OnDuplicateQueryCompiler, IJoinBuilder, IndexQueryCompiler, IndexQueryBuilder, IRecursiveCompiler, IWithRecursiveBuilder, ForeignKeyBuilder, ForeignKeyQueryCompiler, IGroupByBuilder, AlterTableQueryBuilder, CloneTableQueryBuilder, AlterTableQueryCompiler, TableAliasCompiler, DropTableCompiler, DropEventQueryBuilder, TableHistoryQueryCompiler, EventQueryBuilder, EventIntervalDesc, IHavingCompiler, RawSchemaQueryCompiler, RawSchemaQueryBuilder, DropViewQueryBuilder, DropViewCompiler } from '@spinajs/orm';
1
+ import { LimitBuilder, DropTableQueryBuilder, AlterColumnQueryBuilder, TableCloneQueryCompiler, OnDuplicateQueryBuilder, IJoinCompiler, DeleteQueryBuilder, IColumnsBuilder, IColumnsCompiler, ICompilerOutput, LimitQueryCompiler, IGroupByCompiler, InsertQueryBuilder, IWhereBuilder, IWhereCompiler, OrderByBuilder, QueryBuilder, SelectQueryBuilder, UpdateQueryBuilder, SelectQueryCompiler, TableQueryCompiler, TableQueryBuilder, ColumnQueryBuilder, ColumnQueryCompiler, IQueryBuilder, OrderByQueryCompiler, OnDuplicateQueryCompiler, IJoinBuilder, IndexQueryCompiler, IndexQueryBuilder, IRecursiveCompiler, IWithRecursiveBuilder, ForeignKeyBuilder, ForeignKeyQueryCompiler, IGroupByBuilder, AlterTableQueryBuilder, CloneTableQueryBuilder, AlterTableQueryCompiler, AlterColumnQueryCompiler, TableAliasCompiler, DropTableCompiler, DropEventQueryBuilder, TableHistoryQueryCompiler, EventQueryBuilder, EventIntervalDesc, IHavingCompiler, RawSchemaQueryCompiler, RawSchemaQueryBuilder, DropViewQueryBuilder, DropViewCompiler } from '@spinajs/orm';
2
2
  import { Container, IContainer } from '@spinajs/di';
3
+ /**
4
+ * Central identifier escaping for the MySQL-flavoured dialect.
5
+ *
6
+ * Wraps a table/column/alias/schema name in backticks and escapes any embedded
7
+ * backtick by doubling it (the MySQL rule). For a normal identifier (no special
8
+ * characters) the output is byte-identical to the previous raw interpolation
9
+ * (`` `${name}` ``), so existing generated SQL is unchanged; only names that
10
+ * actually contain a backtick produce different — and now safe — output.
11
+ *
12
+ * Dialects that quote differently (e.g. `[name]` with `]`-doubling) override
13
+ * this by shadowing the relevant compiler/statement, the same way
14
+ * {@link SqlTableAliasCompiler} is already overridden per driver.
15
+ */
16
+ export declare function escapeIdentifier(name: string): string;
17
+ /**
18
+ * Escapes a possibly schema-qualified table name, quoting each dot-separated part
19
+ * on its own: `schema.table` becomes `` `schema`.`table` ``, not
20
+ * `` `schema.table` `` — the latter is a single identifier and MySQL rejects it
21
+ * with "Failed to open the referenced table".
22
+ *
23
+ * Needed because {@link TableQueryBuilder.references} takes the parent table as one
24
+ * string, so cross-schema foreign keys arrive here already qualified. A dot is
25
+ * therefore read as a qualifier separator; a table whose name genuinely contains a
26
+ * dot cannot be expressed through that API (it never could).
27
+ */
28
+ export declare function escapeQualifiedIdentifier(name: string): string;
29
+ /**
30
+ * Escapes a DDL string *literal* (SET/ENUM member, COMMENT, CHARACTER SET,
31
+ * COLLATE, string DEFAULT). These are single-quoted string literals, NOT
32
+ * identifiers, so the correct escaping is doubling embedded single quotes.
33
+ * Returns the value WITHOUT the surrounding quotes so callers keep their exact
34
+ * quoting; for a value with no quote the output is byte-identical.
35
+ */
36
+ export declare function escapeStringLiteral(value: string): string;
3
37
  export declare class SqlTableAliasCompiler implements TableAliasCompiler {
4
38
  compile(builder: IQueryBuilder, tbl?: string): string;
5
39
  }
@@ -112,6 +146,18 @@ export declare class SqlInsertQueryCompiler extends SqlQueryCompiler<InsertQuery
112
146
  expression: string;
113
147
  };
114
148
  protected upsort(): ICompilerOutput;
149
+ /**
150
+ * Indices of the columns that take part in this INSERT.
151
+ *
152
+ * An auto increment primary key is omitted only when NO row supplies a value
153
+ * for it. If at least one row supplies one the column stays, and the rows
154
+ * that don't emit NULL so the engine assigns the value.
155
+ *
156
+ * Both {@link columns} and {@link values} MUST derive their shape from this
157
+ * single decision - deciding per-row in one place and per-batch in the other
158
+ * produced value tuples whose arity did not match the column list.
159
+ */
160
+ protected keptColumnIndices(): number[];
115
161
  protected values(): {
116
162
  bindings: any[];
117
163
  data: string;
@@ -217,8 +263,38 @@ export declare class SqlColumnQueryCompiler implements ColumnQueryCompiler {
217
263
  compile(): ICompilerOutput;
218
264
  protected _defaultCompiler(): string;
219
265
  }
220
- export declare class SqlAlterColumnQueryCompiler extends SqlColumnQueryCompiler {
221
- constructor(builder: AlterColumnQueryBuilder);
266
+ export interface SqlAlterColumnQueryCompiler {
267
+ }
268
+ export declare class SqlAlterColumnQueryCompiler extends AlterColumnQueryCompiler {
269
+ protected container: Container;
270
+ protected builder: AlterColumnQueryBuilder;
271
+ constructor(container: Container, builder: AlterColumnQueryBuilder);
272
+ /**
273
+ * Renders the column body using the DRIVER's own column compiler, resolved
274
+ * from the container (late binding) - exactly like the CREATE TABLE path does.
275
+ * Previously this was `super.compile()`, which statically bound every driver
276
+ * to orm-sql's MySQL dialect.
277
+ */
278
+ protected _columnDefinition(): ICompilerOutput;
279
+ /**
280
+ * Whether the expression produced by `compile()` is already a complete, standalone
281
+ * statement. When true, SqlAlterTableQueryCompiler emits it verbatim instead of
282
+ * prefixing it with `ALTER TABLE <table> `.
283
+ *
284
+ * Needed by dialects whose alteration is not expressible as a suffix of ALTER TABLE,
285
+ * eg. MSSQL's `EXEC sp_rename '[t].[old]', 'new', 'COLUMN'`.
286
+ *
287
+ * It is read AFTER `compile()`, so a subclass may decide per `builder.AlterType`.
288
+ * Defaults to false - MySQL (this class) always emits a suffix.
289
+ */
290
+ get IsStandaloneStatement(): boolean;
291
+ /**
292
+ * Dialect hooks. Returning `null` means "emit no statement at all" - the
293
+ * parent AlterTableQueryCompiler filters such columns out.
294
+ */
295
+ protected _add(definition: string): string | null;
296
+ protected _modify(definition: string): string | null;
297
+ protected _rename(): string | null;
222
298
  compile(): ICompilerOutput;
223
299
  }
224
300
  export declare class SqlEventQueryCompiler extends SqlQueryCompiler<EventQueryBuilder> {
@@ -1 +1 @@
1
- {"version":3,"file":"compilers.d.ts","sourceRoot":"","sources":["../../src/compilers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compilers.d.ts","sourceRoot":"","sources":["../../src/compilers.ts"],"names":[],"mappings":"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"}