pwi-plata-type 0.4.190 → 0.4.191
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/__BUILD__/libs/sql.js +69 -21
- package/__BUILD__/libs/sql.js.map +1 -1
- package/package.json +1 -1
- package/src/@types/knex.d.ts +1 -1
- package/src/@types/sql.d.ts +11 -1
- package/src/libs/sql.ts +97 -25
- package/src/tests/8-sql.test.ts +84 -0
package/__BUILD__/libs/sql.js
CHANGED
|
@@ -21,6 +21,30 @@ var Internals;
|
|
|
21
21
|
return this.queryContext(context);
|
|
22
22
|
}
|
|
23
23
|
Internals.context = context;
|
|
24
|
+
function cleanStringToComment(content) {
|
|
25
|
+
return content
|
|
26
|
+
.normalize('NFD')
|
|
27
|
+
.replace(/\*|\-|\@|\?|[\u0300-\u036f]/g, '')
|
|
28
|
+
.toUpperCase();
|
|
29
|
+
}
|
|
30
|
+
Internals.cleanStringToComment = cleanStringToComment;
|
|
31
|
+
function compileComments(comments) {
|
|
32
|
+
const keysNumber = Object.keys(comments).length;
|
|
33
|
+
if (keysNumber === 0) {
|
|
34
|
+
return null;
|
|
35
|
+
}
|
|
36
|
+
const stringCommentBuilder = new Array();
|
|
37
|
+
let i = 0;
|
|
38
|
+
for (const key in comments) {
|
|
39
|
+
if (!Object.hasOwn(comments, key))
|
|
40
|
+
continue;
|
|
41
|
+
const newKey = Internals.cleanStringToComment(key);
|
|
42
|
+
const content = Internals.cleanStringToComment(comments[key]);
|
|
43
|
+
stringCommentBuilder.push(`${newKey}: (${content})`);
|
|
44
|
+
}
|
|
45
|
+
return stringCommentBuilder.join(' ');
|
|
46
|
+
}
|
|
47
|
+
Internals.compileComments = compileComments;
|
|
24
48
|
function includeOne(table, type, s) {
|
|
25
49
|
const t = this;
|
|
26
50
|
const context = t.queryContext() ?? Object.create(null);
|
|
@@ -57,10 +81,13 @@ var Internals;
|
|
|
57
81
|
}
|
|
58
82
|
}
|
|
59
83
|
Internals.includeOne = includeOne;
|
|
60
|
-
function getConnTable(table,
|
|
84
|
+
function getConnTable(table, comments) {
|
|
61
85
|
let conn = this.table(table);
|
|
62
|
-
if (
|
|
63
|
-
|
|
86
|
+
if (comments !== undefined && conn.comment !== undefined) {
|
|
87
|
+
const stringComment = Internals.compileComments(comments);
|
|
88
|
+
if (stringComment !== null) {
|
|
89
|
+
conn = conn.comment(stringComment);
|
|
90
|
+
}
|
|
64
91
|
}
|
|
65
92
|
return conn;
|
|
66
93
|
}
|
|
@@ -120,15 +147,22 @@ class Driver {
|
|
|
120
147
|
async onOpenTrx(trx) {
|
|
121
148
|
return trx;
|
|
122
149
|
}
|
|
123
|
-
|
|
124
|
-
if (this.trxName
|
|
125
|
-
|
|
150
|
+
compileCommentsIntoSql(sql, comments) {
|
|
151
|
+
if (this.trxName !== undefined) {
|
|
152
|
+
comments.TRX = this.trxName;
|
|
126
153
|
}
|
|
127
|
-
|
|
154
|
+
const stringComment = Internals.compileComments(comments);
|
|
155
|
+
if (stringComment === null) {
|
|
156
|
+
return sql;
|
|
157
|
+
}
|
|
158
|
+
return `/* ${stringComment} */${sql}`;
|
|
159
|
+
}
|
|
160
|
+
runRawWithComment(query, comments) {
|
|
161
|
+
return this.conn.raw(this.compileCommentsIntoSql(query.sql, comments ?? Object.create(null)), query.bindings);
|
|
128
162
|
}
|
|
129
|
-
select(table, model) {
|
|
163
|
+
select(table, model, options) {
|
|
130
164
|
return {
|
|
131
|
-
build: (builder) => new Query(builder(this.conn.queryBuilder().
|
|
165
|
+
build: (builder) => new Query(builder(this.conn.queryBuilder().table(table)), model, table, this, options),
|
|
132
166
|
};
|
|
133
167
|
}
|
|
134
168
|
async rawMappedSelect(queryInfo) {
|
|
@@ -141,7 +175,7 @@ class Driver {
|
|
|
141
175
|
}
|
|
142
176
|
}
|
|
143
177
|
const sql = queryInfo.query(queryBuilder, {}).toSQL();
|
|
144
|
-
const result = await this.runRawWithComment(sql).then(r => r, err => ({
|
|
178
|
+
const result = await this.runRawWithComment(sql, queryInfo.comments).then(r => r, err => ({
|
|
145
179
|
errorID: 'PLSQLRWSEL001',
|
|
146
180
|
msg: 'Unexpected error while select',
|
|
147
181
|
error: {
|
|
@@ -173,10 +207,10 @@ class Driver {
|
|
|
173
207
|
}
|
|
174
208
|
async insert(table, model, values, options) {
|
|
175
209
|
if (this.config.client === 'mssql') {
|
|
176
|
-
const sql = this.conn.queryBuilder().
|
|
210
|
+
const sql = this.conn.queryBuilder().table(table).insert(values, '*', {
|
|
177
211
|
includeTriggerModifications: options?.ignoreTrigger === undefined
|
|
178
212
|
}).toSQL();
|
|
179
|
-
return this.runRawWithComment(sql).then(r => r, err => Plata.BuildPlataError({
|
|
213
|
+
return this.runRawWithComment(sql, options?.comments).then(r => r, err => Plata.BuildPlataError({
|
|
180
214
|
errorID: 'PLSQL001',
|
|
181
215
|
msg: 'Unexpected error while inserting',
|
|
182
216
|
error: {
|
|
@@ -185,8 +219,12 @@ class Driver {
|
|
|
185
219
|
},
|
|
186
220
|
}));
|
|
187
221
|
}
|
|
222
|
+
const comments = options?.comments ?? Object.create(null);
|
|
223
|
+
if (this.trxName !== undefined) {
|
|
224
|
+
comments.TRX = this.trxName;
|
|
225
|
+
}
|
|
188
226
|
if (options?.ignoreTrigger === true)
|
|
189
|
-
return this.conn.queryBuilder().getConnTable(table,
|
|
227
|
+
return this.conn.queryBuilder().getConnTable(table, comments).insert(values, '*', {
|
|
190
228
|
includeTriggerModifications: options?.ignoreTrigger
|
|
191
229
|
}).then(r => r, err => Plata.BuildPlataError({
|
|
192
230
|
errorID: 'PLSQLINS001',
|
|
@@ -216,15 +254,21 @@ class Driver {
|
|
|
216
254
|
return key;
|
|
217
255
|
}
|
|
218
256
|
return this.transaction(async (trx) => {
|
|
219
|
-
|
|
257
|
+
if (comments.TRX !== undefined) {
|
|
258
|
+
comments.TRX = `${trx.trxName}<->${this.trxName}`;
|
|
259
|
+
}
|
|
260
|
+
else {
|
|
261
|
+
comments.TRX_INSERT = trx.trxName ?? '';
|
|
262
|
+
}
|
|
263
|
+
const result = await trx.conn.queryBuilder().getConnTable(table, comments).insert(values);
|
|
220
264
|
return trx.conn.select('*').from(table).whereIn(key, result);
|
|
221
265
|
});
|
|
222
266
|
}
|
|
223
|
-
update(table, model) {
|
|
267
|
+
update(table, model, options) {
|
|
224
268
|
return {
|
|
225
269
|
build: async (s, set) => {
|
|
226
|
-
const sql = s(this.conn.queryBuilder().
|
|
227
|
-
return this.runRawWithComment(sql).then(() => true, err => Plata.BuildPlataError({
|
|
270
|
+
const sql = s(this.conn.queryBuilder().table(table)).update(set).toSQL();
|
|
271
|
+
return this.runRawWithComment(sql, options?.comments).then(() => true, err => Plata.BuildPlataError({
|
|
228
272
|
errorID: 'PLSQL002',
|
|
229
273
|
msg: 'Unexpected error while update',
|
|
230
274
|
error: {
|
|
@@ -477,12 +521,16 @@ class Query {
|
|
|
477
521
|
model;
|
|
478
522
|
table;
|
|
479
523
|
joins;
|
|
480
|
-
|
|
524
|
+
options;
|
|
525
|
+
conn;
|
|
526
|
+
constructor(query, model, table, conn, options) {
|
|
481
527
|
const context = query.queryContext() ?? Object.create(null);
|
|
482
528
|
this.joins = context._joins ?? [];
|
|
483
529
|
this.table = table;
|
|
484
530
|
this.model = model;
|
|
485
531
|
this.query = this._buildSelect(query, this.model.template);
|
|
532
|
+
this.conn = conn;
|
|
533
|
+
this.options = options;
|
|
486
534
|
}
|
|
487
535
|
_buildSelect(query, template) {
|
|
488
536
|
const cs = [];
|
|
@@ -504,7 +552,7 @@ class Query {
|
|
|
504
552
|
cs.push(`${key}.${column} as ${key}_${column}`);
|
|
505
553
|
}
|
|
506
554
|
}
|
|
507
|
-
return query.select(...cs);
|
|
555
|
+
return query.select(...cs).toSQL();
|
|
508
556
|
}
|
|
509
557
|
_buildModel(row) {
|
|
510
558
|
const template = this.model.template;
|
|
@@ -535,7 +583,7 @@ class Query {
|
|
|
535
583
|
_handleStream(handler) {
|
|
536
584
|
return new Promise(resolve => {
|
|
537
585
|
let shoudContinue = true;
|
|
538
|
-
const stream = this.query.stream();
|
|
586
|
+
const stream = this.conn.runRawWithComment(this.query, this.options?.comments).stream();
|
|
539
587
|
stream.on('close', async () => {
|
|
540
588
|
return resolve(handler.close());
|
|
541
589
|
});
|
|
@@ -568,7 +616,7 @@ class Query {
|
|
|
568
616
|
async toListAsync() {
|
|
569
617
|
const errors = [];
|
|
570
618
|
const itens = [];
|
|
571
|
-
const result = await this.query.then(r => {
|
|
619
|
+
const result = await this.conn.runRawWithComment(this.query, this.options?.comments).then(r => {
|
|
572
620
|
const promises = [];
|
|
573
621
|
for (let i = 0; i < r.length; i++) {
|
|
574
622
|
promises.push(Plata.FastPromise(async () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sql.js","sourceRoot":"","sources":["../../src/libs/sql.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sql.js","sourceRoot":"","sources":["../../src/libs/sql.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/@types/knex.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ declare module 'knex' {
|
|
|
7
7
|
includeOne<TRecord extends {}, TResult>(table: keyof TRecord, type: Sql.Joins,s: KnexOriginal.JoinCallback): KnexOriginal.QueryBuilder<TRecord, TResult>;
|
|
8
8
|
context<TRecord extends {}, TResult>(context: any): KnexOriginal.QueryBuilder<TRecord, TResult>;
|
|
9
9
|
context<T>(): T;
|
|
10
|
-
getConnTable<TRecord extends {}, TResult>(table: string,
|
|
10
|
+
getConnTable<TRecord extends {}, TResult>(table: string, comments?: Record<string, string>): KnexOriginal.QueryBuilder<TRecord, TResult>
|
|
11
11
|
comment?: <TRecord extends {}, TResult>(comment: string) => KnexOriginal.QueryBuilder<TRecord, TResult>
|
|
12
12
|
}
|
|
13
13
|
}
|
package/src/@types/sql.d.ts
CHANGED
|
@@ -34,7 +34,8 @@ declare global {
|
|
|
34
34
|
interface SqlRawSelectInfo<T> {
|
|
35
35
|
table: string
|
|
36
36
|
cols: Record<string, SqlRawSelectCamp<T>>
|
|
37
|
-
query: (s: Knex.QueryBuilder<T, any>, t: T) => Knex.QueryBuilder<any, any
|
|
37
|
+
query: (s: Knex.QueryBuilder<T, any>, t: T) => Knex.QueryBuilder<any, any>,
|
|
38
|
+
comments?: Record<string, string>
|
|
38
39
|
}
|
|
39
40
|
|
|
40
41
|
type ExtractSqlRawSelectInfo<const I extends SqlRawSelectInfo<any>> =
|
|
@@ -54,6 +55,15 @@ declare global {
|
|
|
54
55
|
|
|
55
56
|
interface InsertOptions {
|
|
56
57
|
ignoreTrigger?: true
|
|
58
|
+
comments?: Record<string, string>
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
interface UpdateOptions {
|
|
62
|
+
comments?: Record<string, string>
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
interface SelectOptions {
|
|
66
|
+
comments?: Record<string, string>
|
|
57
67
|
}
|
|
58
68
|
|
|
59
69
|
type ModelQueryBuilder<T extends Model.Template> =
|
package/src/libs/sql.ts
CHANGED
|
@@ -20,6 +20,36 @@ export namespace Internals {
|
|
|
20
20
|
return this.queryContext(context)
|
|
21
21
|
}
|
|
22
22
|
|
|
23
|
+
export function cleanStringToComment(content: string): string {
|
|
24
|
+
return content
|
|
25
|
+
.normalize('NFD')
|
|
26
|
+
.replace(/\*|\-|\@|\?|[\u0300-\u036f]/g, '')
|
|
27
|
+
.toUpperCase()
|
|
28
|
+
;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export function compileComments(comments: Record<string, string>): string | null {
|
|
32
|
+
const keysNumber = Object.keys(comments).length
|
|
33
|
+
|
|
34
|
+
if (keysNumber === 0) {
|
|
35
|
+
return null
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
const stringCommentBuilder = new Array<string>()
|
|
39
|
+
let i = 0
|
|
40
|
+
|
|
41
|
+
for (const key in comments) {
|
|
42
|
+
if (!Object.hasOwn(comments, key)) continue
|
|
43
|
+
|
|
44
|
+
const newKey = Internals.cleanStringToComment(key)
|
|
45
|
+
const content = Internals.cleanStringToComment(comments[key])
|
|
46
|
+
|
|
47
|
+
stringCommentBuilder.push(`${newKey}: (${content})`)
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
return stringCommentBuilder.join(' ')
|
|
51
|
+
}
|
|
52
|
+
|
|
23
53
|
export function includeOne(table: string, type: Sql.Joins,s: Knex.JoinCallback) {
|
|
24
54
|
const t: Knex.QueryBuilder = this
|
|
25
55
|
const context = t.queryContext() ?? Object.create(null)
|
|
@@ -60,11 +90,16 @@ export namespace Internals {
|
|
|
60
90
|
}
|
|
61
91
|
}
|
|
62
92
|
|
|
63
|
-
export function getConnTable(this: Knex.QueryBuilder, table: string,
|
|
93
|
+
export function getConnTable(this: Knex.QueryBuilder, table: string, comments?: Record<string, string>) {
|
|
64
94
|
let conn = this.table(table)
|
|
65
95
|
|
|
66
|
-
if (
|
|
67
|
-
|
|
96
|
+
if (comments !== undefined && conn.comment !== undefined) {
|
|
97
|
+
const stringComment = Internals.compileComments(comments)
|
|
98
|
+
|
|
99
|
+
if (stringComment !== null) {
|
|
100
|
+
conn = conn.comment(stringComment)
|
|
101
|
+
}
|
|
102
|
+
|
|
68
103
|
}
|
|
69
104
|
|
|
70
105
|
return conn
|
|
@@ -138,21 +173,36 @@ export class Driver<InTransaction extends boolean> {
|
|
|
138
173
|
return trx
|
|
139
174
|
}
|
|
140
175
|
|
|
141
|
-
|
|
142
|
-
if (this.trxName
|
|
143
|
-
|
|
176
|
+
private compileCommentsIntoSql(sql: string, comments: Record<string, string>): string {
|
|
177
|
+
if (this.trxName !== undefined) {
|
|
178
|
+
comments.TRX = this.trxName
|
|
144
179
|
}
|
|
145
180
|
|
|
146
|
-
|
|
181
|
+
const stringComment = Internals.compileComments(comments)
|
|
182
|
+
|
|
183
|
+
if (stringComment === null) {
|
|
184
|
+
return sql
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
return `/* ${stringComment} */${sql}`
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
public runRawWithComment(query: { sql: string, bindings: readonly any[] }, comments?: Record<string, string>) {
|
|
191
|
+
return this.conn.raw(
|
|
192
|
+
this.compileCommentsIntoSql(query.sql, comments ?? Object.create(null)),
|
|
193
|
+
query.bindings
|
|
194
|
+
)
|
|
147
195
|
}
|
|
148
196
|
|
|
149
|
-
public select<T extends Model.Template, C extends Model.Converters<T>>(table: string, model: ModelTemplate<T, C
|
|
197
|
+
public select<T extends Model.Template, C extends Model.Converters<T>>(table: string, model: ModelTemplate<T, C>, options?: Sql.SelectOptions) {
|
|
150
198
|
return {
|
|
151
199
|
build: (builder: Sql.Builder<T>) =>
|
|
152
200
|
new Query(
|
|
153
|
-
builder(this.conn.queryBuilder().
|
|
201
|
+
builder(this.conn.queryBuilder().table(table)),
|
|
154
202
|
model,
|
|
155
203
|
table,
|
|
204
|
+
this,
|
|
205
|
+
options,
|
|
156
206
|
)
|
|
157
207
|
,
|
|
158
208
|
}
|
|
@@ -172,7 +222,7 @@ export class Driver<InTransaction extends boolean> {
|
|
|
172
222
|
|
|
173
223
|
const sql = queryInfo.query(queryBuilder as any, {} as any).toSQL()
|
|
174
224
|
|
|
175
|
-
const result: PlataResult<any[]> = await this.runRawWithComment(sql).then(
|
|
225
|
+
const result: PlataResult<any[]> = await this.runRawWithComment(sql, queryInfo.comments).then(
|
|
176
226
|
r => r,
|
|
177
227
|
err => ({
|
|
178
228
|
errorID: 'PLSQLRWSEL001',
|
|
@@ -210,9 +260,9 @@ export class Driver<InTransaction extends boolean> {
|
|
|
210
260
|
return result
|
|
211
261
|
}
|
|
212
262
|
|
|
213
|
-
public async insert<T extends Model.Template, C extends Model.Converters<T>>(table: string, model: ModelTemplate<T, C>, values: Model.ParcialTemplateType<T>[], options?: Sql.InsertOptions): PlataPromise<Model.ExtractTemplateType<T>[]> {
|
|
263
|
+
public async insert<T extends Model.Template, C extends Model.Converters<T>>(table: string, model: ModelTemplate<T, C>, values: Model.ParcialTemplateType<T>[], options?: Sql.InsertOptions): PlataPromise<Model.ExtractTemplateType<T>[]> {
|
|
214
264
|
if (this.config.client === 'mssql') {
|
|
215
|
-
const sql = this.conn.queryBuilder().
|
|
265
|
+
const sql = this.conn.queryBuilder().table(table).insert(
|
|
216
266
|
values,
|
|
217
267
|
'*',
|
|
218
268
|
{
|
|
@@ -220,7 +270,7 @@ export class Driver<InTransaction extends boolean> {
|
|
|
220
270
|
}
|
|
221
271
|
).toSQL()
|
|
222
272
|
|
|
223
|
-
return this.runRawWithComment(sql).then(
|
|
273
|
+
return this.runRawWithComment(sql, options?.comments).then(
|
|
224
274
|
r => r,
|
|
225
275
|
err => Plata.BuildPlataError({
|
|
226
276
|
errorID: 'PLSQL001',
|
|
@@ -233,10 +283,16 @@ export class Driver<InTransaction extends boolean> {
|
|
|
233
283
|
)
|
|
234
284
|
}
|
|
235
285
|
|
|
286
|
+
const comments: Record<string, string> = options?.comments ?? Object.create(null)
|
|
287
|
+
|
|
288
|
+
if (this.trxName !== undefined) {
|
|
289
|
+
comments.TRX = this.trxName
|
|
290
|
+
}
|
|
291
|
+
|
|
236
292
|
// TODO ver a necessidade de comentario de trx nas outras conexões
|
|
237
293
|
|
|
238
294
|
if (options?.ignoreTrigger === true)
|
|
239
|
-
return this.conn.queryBuilder().getConnTable(table,
|
|
295
|
+
return this.conn.queryBuilder().getConnTable(table, comments).insert(
|
|
240
296
|
values,
|
|
241
297
|
'*',
|
|
242
298
|
{
|
|
@@ -282,7 +338,13 @@ export class Driver<InTransaction extends boolean> {
|
|
|
282
338
|
|
|
283
339
|
return this.transaction(
|
|
284
340
|
async (trx) => {
|
|
285
|
-
|
|
341
|
+
if (comments.TRX !== undefined) {
|
|
342
|
+
comments.TRX = `${trx.trxName}<->${this.trxName}`
|
|
343
|
+
} else {
|
|
344
|
+
comments.TRX_INSERT = trx.trxName ?? ''
|
|
345
|
+
}
|
|
346
|
+
|
|
347
|
+
const result: number[] = await trx.conn.queryBuilder().getConnTable(table, comments).insert(
|
|
286
348
|
values,
|
|
287
349
|
)
|
|
288
350
|
|
|
@@ -291,12 +353,12 @@ export class Driver<InTransaction extends boolean> {
|
|
|
291
353
|
)
|
|
292
354
|
}
|
|
293
355
|
|
|
294
|
-
public update<T extends Model.Template, C extends Model.Converters<T>>(table: string, model: ModelTemplate<T, C
|
|
356
|
+
public update<T extends Model.Template, C extends Model.Converters<T>>(table: string, model: ModelTemplate<T, C>, options?: Sql.UpdateOptions) {
|
|
295
357
|
return {
|
|
296
358
|
build: async (s: Sql.Builder<T>, set: Model.ParcialTemplateType<T>): PlataPromise<true> => {
|
|
297
|
-
const sql = s(this.conn.queryBuilder().
|
|
359
|
+
const sql = s(this.conn.queryBuilder().table(table)).update(set as any).toSQL()
|
|
298
360
|
|
|
299
|
-
return this.runRawWithComment(sql).then(
|
|
361
|
+
return this.runRawWithComment(sql, options?.comments).then(
|
|
300
362
|
() => true,
|
|
301
363
|
err => Plata.BuildPlataError({
|
|
302
364
|
errorID: 'PLSQL002',
|
|
@@ -627,12 +689,20 @@ export class Driver<InTransaction extends boolean> {
|
|
|
627
689
|
}
|
|
628
690
|
|
|
629
691
|
export class Query<T extends Model.Template, C extends Model.Converters<T>> {
|
|
630
|
-
public query:
|
|
692
|
+
public query: { sql: string, bindings: readonly any[] }
|
|
631
693
|
public readonly model: ModelTemplate<T, C>
|
|
632
694
|
public readonly table: string
|
|
633
695
|
public readonly joins: string[]
|
|
634
|
-
|
|
635
|
-
|
|
696
|
+
private readonly options: Sql.SelectOptions | undefined
|
|
697
|
+
private readonly conn: Driver<boolean>
|
|
698
|
+
|
|
699
|
+
constructor(
|
|
700
|
+
query: Sql.ModelQueryBuilder<T>,
|
|
701
|
+
model: ModelTemplate<T, C>,
|
|
702
|
+
table: string,
|
|
703
|
+
conn: Driver<boolean>,
|
|
704
|
+
options?: Sql.SelectOptions
|
|
705
|
+
) {
|
|
636
706
|
const context = query.queryContext() ?? Object.create(null)
|
|
637
707
|
|
|
638
708
|
this.joins = context._joins ?? []
|
|
@@ -640,9 +710,11 @@ export class Query<T extends Model.Template, C extends Model.Converters<T>> {
|
|
|
640
710
|
this.table = table
|
|
641
711
|
this.model = model
|
|
642
712
|
this.query = this._buildSelect(query, this.model.template)
|
|
713
|
+
this.conn = conn
|
|
714
|
+
this.options = options
|
|
643
715
|
}
|
|
644
716
|
|
|
645
|
-
private _buildSelect<T extends Model.Template>(query: Sql.ModelQueryBuilder<T>, template: T):
|
|
717
|
+
private _buildSelect<T extends Model.Template>(query: Sql.ModelQueryBuilder<T>, template: T): { sql: string, bindings: readonly any[] } {
|
|
646
718
|
const cs: string[] = []
|
|
647
719
|
|
|
648
720
|
for (const key in template) {
|
|
@@ -668,7 +740,7 @@ export class Query<T extends Model.Template, C extends Model.Converters<T>> {
|
|
|
668
740
|
}
|
|
669
741
|
}
|
|
670
742
|
|
|
671
|
-
return query.select(...cs)
|
|
743
|
+
return query.select(...cs).toSQL()
|
|
672
744
|
}
|
|
673
745
|
|
|
674
746
|
private _buildModel<T extends Model.Template>(row: any): typeof this.model.type {
|
|
@@ -709,7 +781,7 @@ export class Query<T extends Model.Template, C extends Model.Converters<T>> {
|
|
|
709
781
|
return new Promise(resolve => {
|
|
710
782
|
let shoudContinue = true
|
|
711
783
|
|
|
712
|
-
const stream = this.query.stream()
|
|
784
|
+
const stream = this.conn.runRawWithComment(this.query, this.options?.comments).stream()
|
|
713
785
|
|
|
714
786
|
stream.on('close', async () => {
|
|
715
787
|
return resolve(handler.close<Y>())
|
|
@@ -748,7 +820,7 @@ export class Query<T extends Model.Template, C extends Model.Converters<T>> {
|
|
|
748
820
|
const errors: PlataError[] = []
|
|
749
821
|
const itens: any[] = []
|
|
750
822
|
|
|
751
|
-
const result: PlataResult<boolean[]> = await this.query.then(
|
|
823
|
+
const result: PlataResult<boolean[]> = await this.conn.runRawWithComment(this.query, this.options?.comments).then(
|
|
752
824
|
r => {
|
|
753
825
|
const promises: Promise<boolean>[] = []
|
|
754
826
|
|
package/src/tests/8-sql.test.ts
CHANGED
|
@@ -537,6 +537,90 @@ describe('PlataSql', () => {
|
|
|
537
537
|
assert.strictEqual(value.errorID, 'PLSQLRWSEL002')
|
|
538
538
|
})
|
|
539
539
|
|
|
540
|
+
it('Select with SQL Comments', async () => {
|
|
541
|
+
let capturedSql = ''
|
|
542
|
+
const listener = (q: any) => { capturedSql = q.sql }
|
|
543
|
+
|
|
544
|
+
sql.conn.on('query', listener)
|
|
545
|
+
|
|
546
|
+
const result = await sql.select('TB_INSERT', modelSql, {
|
|
547
|
+
comments: {
|
|
548
|
+
user: 'test',
|
|
549
|
+
feature: 'select_test'
|
|
550
|
+
}
|
|
551
|
+
}).build(s => s.limit(1)).toListAsync()
|
|
552
|
+
|
|
553
|
+
sql.conn.off('query', listener)
|
|
554
|
+
|
|
555
|
+
assert.strictEqual(result.errorID, undefined)
|
|
556
|
+
assert.ok(capturedSql.includes('USER: (TEST)'))
|
|
557
|
+
assert.ok(capturedSql.includes('FEATURE: (SELECT_TEST)'))
|
|
558
|
+
})
|
|
559
|
+
|
|
560
|
+
it('Update with SQL Comments', async () => {
|
|
561
|
+
let capturedSql = ''
|
|
562
|
+
const listener = (q: any) => { capturedSql = q.sql }
|
|
563
|
+
|
|
564
|
+
sql.conn.on('query', listener)
|
|
565
|
+
|
|
566
|
+
const result = await sql.update('TB_UPDATE', modelSql, {
|
|
567
|
+
comments: {
|
|
568
|
+
operation: 'update_price'
|
|
569
|
+
}
|
|
570
|
+
}).build(
|
|
571
|
+
s => s.where('PK_ID', 1),
|
|
572
|
+
{ VL_PRECO: 777, DS_OBS: 'TEST' }
|
|
573
|
+
)
|
|
574
|
+
|
|
575
|
+
sql.conn.off('query', listener)
|
|
576
|
+
|
|
577
|
+
assert.strictEqual(result, true)
|
|
578
|
+
assert.ok(capturedSql.includes('OPERATION: (UPDATE_PRICE)'))
|
|
579
|
+
})
|
|
580
|
+
|
|
581
|
+
it('Raw execution preserves comments', async () => {
|
|
582
|
+
let capturedSql = ''
|
|
583
|
+
const listener = (q: any) => { capturedSql = q.sql }
|
|
584
|
+
|
|
585
|
+
sql.conn.on('query', listener)
|
|
586
|
+
|
|
587
|
+
const raw = sql.conn.queryBuilder().from('TB_INSERT').select('*').limit(1).toSQL()
|
|
588
|
+
|
|
589
|
+
const result = await sql.runRawWithComment(raw, {
|
|
590
|
+
trace: 'raw_test'
|
|
591
|
+
})
|
|
592
|
+
|
|
593
|
+
sql.conn.off('query', listener)
|
|
594
|
+
|
|
595
|
+
assert.ok(Array.isArray(result))
|
|
596
|
+
assert.ok(capturedSql.includes('TRACE: (RAW_TEST)'))
|
|
597
|
+
})
|
|
598
|
+
|
|
599
|
+
it('Transaction automatically injects TRX comment', async () => {
|
|
600
|
+
let capturedSql = ''
|
|
601
|
+
const listener = (q: any) => {
|
|
602
|
+
capturedSql = q.sql
|
|
603
|
+
}
|
|
604
|
+
|
|
605
|
+
await sql.transaction(async trx => {
|
|
606
|
+
trx.trxConn.on('query', listener)
|
|
607
|
+
|
|
608
|
+
await trx
|
|
609
|
+
.select('TB_INSERT', modelSql)
|
|
610
|
+
.build(s => s.limit(1))
|
|
611
|
+
.toListAsync()
|
|
612
|
+
;
|
|
613
|
+
|
|
614
|
+
|
|
615
|
+
trx.trxConn.off('query', listener)
|
|
616
|
+
|
|
617
|
+
return true
|
|
618
|
+
})
|
|
619
|
+
|
|
620
|
+
assert.ok(capturedSql.includes('TRX: ('))
|
|
621
|
+
})
|
|
622
|
+
|
|
623
|
+
|
|
540
624
|
|
|
541
625
|
after(async () => { // Requerido para Sqlite3
|
|
542
626
|
const sqlError = await sql.conn.destroy().then(
|