@entity-access/entity-access 1.0.169 → 1.0.171
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/dist/drivers/base/BaseDriver.d.ts +3 -2
- package/dist/drivers/base/BaseDriver.d.ts.map +1 -1
- package/dist/drivers/base/BaseDriver.js +28 -10
- package/dist/drivers/base/BaseDriver.js.map +1 -1
- package/dist/drivers/sql-server/ExpressionToSqlServer.js +2 -2
- package/dist/drivers/sql-server/ExpressionToSqlServer.js.map +1 -1
- package/dist/model/EntitySource.d.ts +6 -1
- package/dist/model/EntitySource.d.ts.map +1 -1
- package/dist/model/EntitySource.js +52 -4
- package/dist/model/EntitySource.js.map +1 -1
- package/dist/query/ast/ExpressionToSql.d.ts.map +1 -1
- package/dist/query/ast/ExpressionToSql.js +28 -27
- package/dist/query/ast/ExpressionToSql.js.map +1 -1
- package/dist/tests/db-tests/tests/upsert-test.d.ts.map +1 -1
- package/dist/tests/db-tests/tests/upsert-test.js +8 -4
- package/dist/tests/db-tests/tests/upsert-test.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/workflows/WorkflowStorage.js +2 -2
- package/dist/workflows/WorkflowStorage.js.map +1 -1
- package/package.json +1 -1
- package/src/drivers/base/BaseDriver.ts +32 -10
- package/src/drivers/sql-server/ExpressionToSqlServer.ts +2 -2
- package/src/model/EntitySource.ts +62 -5
- package/src/query/ast/ExpressionToSql.ts +31 -29
- package/src/tests/db-tests/tests/upsert-test.ts +9 -4
- package/src/workflows/WorkflowStorage.ts +2 -2
|
@@ -5,7 +5,7 @@ import QueryCompiler from "../../compiler/QueryCompiler.js";
|
|
|
5
5
|
import EntityType from "../../entity-query/EntityType.js";
|
|
6
6
|
import Migrations from "../../migrations/Migrations.js";
|
|
7
7
|
import ChangeEntry from "../../model/changes/ChangeEntry.js";
|
|
8
|
-
import { DeleteStatement, Expression, InsertStatement, UpdateStatement } from "../../query/ast/Expressions.js";
|
|
8
|
+
import { DeleteStatement, Expression, Identifier, InsertStatement, SelectStatement, UpdateStatement } from "../../query/ast/Expressions.js";
|
|
9
9
|
export interface IRecord {
|
|
10
10
|
[key: string]: string | boolean | number | Date | Uint8Array | Blob;
|
|
11
11
|
}
|
|
@@ -93,7 +93,8 @@ export declare abstract class BaseDriver {
|
|
|
93
93
|
abstract newConnection(): BaseConnection;
|
|
94
94
|
/** Must dispose ObjectPools */
|
|
95
95
|
abstract dispose(): any;
|
|
96
|
-
|
|
96
|
+
createSelectWithKeysExpression(type: EntityType, check: any, returnFields: Expression[]): SelectStatement;
|
|
97
|
+
createUpsertExpression(type: EntityType, entity: any, mode: "update" | "upsert" | "insert" | "insert-select", test?: any, returnFields?: Identifier[]): Expression;
|
|
97
98
|
createInsertExpression(type: EntityType, entity: any): InsertStatement;
|
|
98
99
|
createUpdateExpression(entry: ChangeEntry): UpdateStatement;
|
|
99
100
|
createDeleteExpression(type: EntityType, entity: any): DeleteStatement;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseDriver.d.ts","sourceRoot":"","sources":["../../../src/drivers/base/BaseDriver.ts"],"names":[],"mappings":";;AAGA,OAAO,6BAA6B,CAAC;AAErC,OAAO,aAAa,MAAM,iCAAiC,CAAC;AAC5D,OAAO,UAAU,MAAM,kCAAkC,CAAC;AAC1D,OAAO,UAAU,MAAM,gCAAgC,CAAC;AACxD,OAAO,WAAW,MAAM,oCAAoC,CAAC;AAC7D,OAAO,EAA8B,eAAe,EAAoB,UAAU,
|
|
1
|
+
{"version":3,"file":"BaseDriver.d.ts","sourceRoot":"","sources":["../../../src/drivers/base/BaseDriver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Making sure that Symbol.dispose is not undefined
|
|
2
2
|
import "../../common/IDisposable.js";
|
|
3
|
-
import { BinaryExpression, Constant, DeleteStatement, Expression, Identifier, InsertStatement, ReturnUpdated, TableLiteral, UpdateStatement, UpsertStatement, ValuesStatement } from "../../query/ast/Expressions.js";
|
|
3
|
+
import { BinaryExpression, Constant, DeleteStatement, Expression, Identifier, InsertStatement, ReturnUpdated, SelectStatement, TableLiteral, UpdateStatement, UpsertStatement, ValuesStatement } from "../../query/ast/Expressions.js";
|
|
4
4
|
export const toQuery = (text) => typeof text === "string"
|
|
5
5
|
? { text, values: [] }
|
|
6
6
|
: text;
|
|
@@ -64,18 +64,33 @@ export class BaseDriver {
|
|
|
64
64
|
constructor(connectionString) {
|
|
65
65
|
this.connectionString = connectionString;
|
|
66
66
|
}
|
|
67
|
-
|
|
67
|
+
createSelectWithKeysExpression(type, check, returnFields) {
|
|
68
|
+
let where = null;
|
|
69
|
+
for (const key in check) {
|
|
70
|
+
if (Object.prototype.hasOwnProperty.call(check, key)) {
|
|
71
|
+
const element = check[key];
|
|
72
|
+
const column = Expression.identifier(type.getField(key).columnName);
|
|
73
|
+
const condition = Expression.equal(column, Expression.constant(element));
|
|
74
|
+
where = where
|
|
75
|
+
? Expression.logicalAnd(where, condition)
|
|
76
|
+
: condition;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
const source = type.fullyQualifiedName;
|
|
80
|
+
return SelectStatement.create({
|
|
81
|
+
source,
|
|
82
|
+
fields: returnFields,
|
|
83
|
+
where
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
createUpsertExpression(type, entity, mode, test, returnFields) {
|
|
68
87
|
const table = type.fullyQualifiedName;
|
|
69
|
-
const returnFields = [];
|
|
70
88
|
if (mode === "insert") {
|
|
71
89
|
const fields = [];
|
|
72
90
|
const values = [];
|
|
73
91
|
for (const iterator of type.columns) {
|
|
74
92
|
const value = entity[iterator.name];
|
|
75
93
|
if (value === void 0) {
|
|
76
|
-
if (iterator.generated) {
|
|
77
|
-
returnFields.push(Expression.identifier(iterator.columnName));
|
|
78
|
-
}
|
|
79
94
|
continue;
|
|
80
95
|
}
|
|
81
96
|
fields.push(Expression.identifier(iterator.columnName));
|
|
@@ -99,15 +114,15 @@ export class BaseDriver {
|
|
|
99
114
|
for (const iterator of type.columns) {
|
|
100
115
|
const value = entity[iterator.name];
|
|
101
116
|
const assign = Expression.assign(Expression.identifier(iterator.columnName), Expression.constant(value));
|
|
102
|
-
if (
|
|
117
|
+
if (test ? iterator.name in test : iterator.key) {
|
|
103
118
|
keys.push(assign);
|
|
104
119
|
insert.push(assign);
|
|
105
120
|
continue;
|
|
106
121
|
}
|
|
122
|
+
if (iterator.generated) {
|
|
123
|
+
continue;
|
|
124
|
+
}
|
|
107
125
|
if (value === undefined) {
|
|
108
|
-
if (iterator.generated) {
|
|
109
|
-
returnFields.push(Expression.identifier(iterator.columnName));
|
|
110
|
-
}
|
|
111
126
|
continue;
|
|
112
127
|
}
|
|
113
128
|
insert.push(assign);
|
|
@@ -117,6 +132,9 @@ export class BaseDriver {
|
|
|
117
132
|
update.push(assign);
|
|
118
133
|
}
|
|
119
134
|
if (mode === "update") {
|
|
135
|
+
if (update.length === 0) {
|
|
136
|
+
return null;
|
|
137
|
+
}
|
|
120
138
|
let where = null;
|
|
121
139
|
for (const iterator of keys) {
|
|
122
140
|
where = where ? Expression.logicalAnd(where, iterator) : iterator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseDriver.js","sourceRoot":"","sources":["../../../src/drivers/base/BaseDriver.ts"],"names":[],"mappings":"AAEA,mDAAmD;AACnD,OAAO,6BAA6B,CAAC;AAMrC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,eAAe,EAAoB,UAAU,
|
|
1
|
+
{"version":3,"file":"BaseDriver.js","sourceRoot":"","sources":["../../../src/drivers/base/BaseDriver.ts"],"names":[],"mappings":"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"}
|
|
@@ -90,8 +90,8 @@ export default class ExpressionToSqlServer extends ExpressionToSql {
|
|
|
90
90
|
UPDATE ${table}
|
|
91
91
|
SET
|
|
92
92
|
${prepareJoin(updateSet)}
|
|
93
|
-
|
|
94
|
-
${
|
|
93
|
+
${returnValues}
|
|
94
|
+
WHERE ${prepareJoin(compare, " AND ")};
|
|
95
95
|
IF @@ROWCOUNT=0
|
|
96
96
|
BEGIN
|
|
97
97
|
INSERT INTO ${table} (${prepareJoin(insertColumns)})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExpressionToSqlServer.js","sourceRoot":"","sources":["../../../src/drivers/sql-server/ExpressionToSqlServer.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ExpressionToSqlServer.js","sourceRoot":"","sources":["../../../src/drivers/sql-server/ExpressionToSqlServer.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,oCAAoC,CAAC;AACjE,OAAO,EAAmC,aAAa,EAAE,iBAAiB,EAAmD,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACrL,OAAO,EAAc,OAAO,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AAEzF,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,eAAe;IAE9D,kBAAkB,CAAC,CAAgB;QAC/B,IAAI,CAAC,CAAC,EAAE;YACJ,OAAO,EAAE,CAAC;SACb;QACD,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YACvB,OAAO,EAAE,CAAC;SACb;QACD,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,KAAK,MAAM,QAAQ,IAAI,CAAC,CAAC,MAAM,EAAE;YAC7B,IAAI,CAAC,EAAE,EAAE;gBACL,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aACpB;YACD,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;SAC/D;QACD,OAAO,OAAO,CAAC,WAAW,MAAM,EAAE,CAAC;IACvC,CAAC;IAED,oBAAoB,CAAC,CAAkB;QACnC,MAAM,YAAY,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,IAAI,CAAC,CAAC,MAAM,YAAY,eAAe,EAAE;YAErC,MAAM,IAAI,GAAG,EAAE,CAAC;YAChB,KAAK,MAAM,QAAQ,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE;gBACpC,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;gBACtC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;oBAClB,SAAS;iBACZ;gBACD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAK,GAAI,GAAG,CAAC,CAAC;aACnC;YAED,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;gBACnB,OAAO,OAAO,CAAC,eAAe,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,YAAY,EAAE,CAAC;aACvE;YAED,OAAO,OAAO,CAAC,eAAe,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,YAAY,WAAW,IAAI,EAAE,CAAC;SAC5H;QACD,OAAO,OAAO,CAAC,eAAe,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,YAAY,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;IAEhG,CAAC;IAED,oBAAoB,CAAC,CAAkB;QACnC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAElC,MAAM,aAAa,GAAG,EAAE,CAAC;QACzB,MAAM,YAAY,GAAG,EAAE,CAAC;QACxB,MAAM,SAAS,GAAG,EAAE,CAAC;QAErB,MAAM,OAAO,GAAG,EAAE,CAAC;QAEnB,MAAM,IAAI,GAAG,EAAE,CAAC;QAEhB,KAAK,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,MAAM,EAAE;YACpC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC3B,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC5B,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACtB,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SACxB;QAED,KAAK,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,MAAM,EAAE;YACpC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC3B,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC5B,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;SACzC;QAED,KAAK,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE;YAClC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC3B,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC5B,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACpC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SAChB;QAED,MAAM,YAAY,GAAG,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAExE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;YAEnB,IAAI,CAAC,CAAC,aAAa,EAAE;gBAEjB,MAAM,MAAM,GAAG,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBAEhE,OAAO,OAAO,CAAC;6BACF,WAAW,CAAC,MAAM,CAAC,SAAS,KAAK;4BAClC,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC;;;sCAGnB,KAAK,KAAK,WAAW,CAAC,aAAa,CAAC;0BAChD,YAAY;iDACW,WAAW,CAAC,YAAY,CAAC,WAAW,WAAW,CAAC,aAAa,CAAC;0DACrD,KAAK,UAAU,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC;;iBAErF,CAAC;aACL;YACD,OAAO,OAAO,CAAC,WAAW,WAAW,CAAC,IAAI,CAAC,SAAS,KAAK;wBAC7C,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC;;;kCAGnB,KAAK,KAAK,WAAW,CAAC,aAAa,CAAC;6CACzB,WAAW,CAAC,YAAY,CAAC,WAAW,WAAW,CAAC,aAAa,CAAC;sDACrD,KAAK,UAAU,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC;qBAC7E,CAAC;SACjB;QAEG,OAAO,OAAO,CAAC;qBACF,KAAK;;kBAER,WAAW,CAAC,SAAS,CAAC;kBACtB,YAAY;oBACV,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC;;;8BAGnB,KAAK,KAAK,WAAW,CAAC,aAAa,CAAC;kBAChD,YAAY;yCACW,WAAW,CAAC,YAAY,CAAC,WAAW,WAAW,CAAC,aAAa,CAAC;kDACrD,KAAK,UAAU,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC;iBAC7E,CAAC;IACd,CAAC;IAGD,oBAAoB,CAAC,CAAkB;QAEnC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;QAEzB,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpG,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAExE,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QACpD,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAE3F,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;QACrC,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,CAAC;QAEtC,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,EAAE;YACrB,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE;gBACpB,6CAA6C;gBAC7C,+CAA+C;gBAC/C,CAAC,CAAC,OAAO,GAAG;oBACR,iBAAiB,CAAC,MAAM,CAAC,EAAG,MAAM,EAAG,aAAa,CAAC,GAAG,EAAG,CAAC;iBAC7D,CAAC;aACL;SACJ;QAED,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACjC,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,GAAG,EAAE,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QAE/D,IAAI,MAAkB,CAAC;QACvB,IAAI,EAAmB,CAAC;QACxB,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,iBAAiB,EAAE;YACrC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAyB,CAAC;YACtC,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACpE,MAAM,GAAI,OAAO,CAAC,WAAW,IAAI,QAAQ,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;YACvG,EAAE,GAAG,EAAE,CAAC;SACX;aAAM;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YAC9B,EAAE,GAAG,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAChF;QAED,4DAA4D;QAC5D,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;QACvF,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5F,OAAO,OAAO,CAAC,UAAU,GAAG;UAC1B,MAAM;eACD,MAAM,GAAG,EAAE,GAAG,KAAK,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,IAAI,EAAE,CAAC;IACnE,CAAC;IAED,oBAAoB,CAAC,CAAkB;QACnC,MAAM,IAAI,GAAG,EAAE,CAAC;QAChB,KAAK,MAAM,SAAS,IAAI,CAAC,CAAC,MAAM,EAAE;YAC9B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAK,IAAI,CAAC,UAAU,CAAC,SAAS,CAAE,GAAG,CAAC,CAAC;SAC1D;QACD,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/E,OAAO,OAAO,CAAC,WAAW,IAAI,KAAK,MAAM,EAAE,CAAC;IAEhD,CAAC;IAED,mBAAmB,CAAC,EAAE,KAAK,EAAkB;QACzC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAE,KAAK,CAAC,CAAC;IACvC,CAAC;CACJ"}
|
|
@@ -11,7 +11,12 @@ export declare class EntitySource<T = any> {
|
|
|
11
11
|
get [contextSymbol](): EntityContext;
|
|
12
12
|
private filter;
|
|
13
13
|
constructor(model: EntityType, context: EntityContext);
|
|
14
|
-
saveDirect(
|
|
14
|
+
saveDirect({ test, mode, changes, select }: {
|
|
15
|
+
test?: Partial<T>;
|
|
16
|
+
changes: Partial<T>;
|
|
17
|
+
select?: Partial<T>;
|
|
18
|
+
mode: DirectSaveType;
|
|
19
|
+
}): Promise<Partial<T>>;
|
|
15
20
|
add(item: Partial<T>): T;
|
|
16
21
|
/**
|
|
17
22
|
* Entity can only be deleted if all primary keys are present
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntitySource.d.ts","sourceRoot":"","sources":["../../src/model/EntitySource.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,UAAU,MAAM,+BAA+B,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEjF,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE1E,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAE/D,qBAAa,YAAY,CAAC,CAAC,GAAG,GAAG;IAkBzB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAjBrB,UAAU,KAEf;IAEF,IAAI,CAAC,WAAW,CAAC,eAEhB;IAED,IAAG,CAAC,aAAa,CAAC,kBAEjB;IAED,OAAO,CAAC,MAAM,CAAa;gBAIN,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,aAAa;IAK9B,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"EntitySource.d.ts","sourceRoot":"","sources":["../../src/model/EntitySource.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,UAAU,MAAM,+BAA+B,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEjF,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE1E,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAE/D,qBAAa,YAAY,CAAC,CAAC,GAAG,GAAG;IAkBzB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAjBrB,UAAU,KAEf;IAEF,IAAI,CAAC,WAAW,CAAC,eAEhB;IAED,IAAG,CAAC,aAAa,CAAC,kBAEjB;IAED,OAAO,CAAC,MAAM,CAAa;gBAIN,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,aAAa;IAK9B,UAAU,CAAC,EACpB,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,MAAM,EACT,EAAE;QAAE,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QAAC,IAAI,EAAE,cAAc,CAAA;KAAE;IAsEjF,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IAa/B;;;OAGG;IACI,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IAkBvB,GAAG,IAAI,YAAY,CAAC,CAAC,CAAC;IAItB,QAAQ,CAAC,IAAI,GAAE,MAAM,GAAG,QAAiB,GAAG,YAAY,CAAC,CAAC,CAAC;IAM3D,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC;IAIpD,OAAO;IAYP,OAAO;;;;CAOjB"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import EntityQuery from "./EntityQuery.js";
|
|
2
2
|
import { contextSymbol, modelSymbol } from "../common/symbols/symbols.js";
|
|
3
|
+
import { Expression } from "../query/ast/Expressions.js";
|
|
3
4
|
export class EntitySource {
|
|
4
5
|
get [modelSymbol]() {
|
|
5
6
|
return this.model;
|
|
@@ -12,9 +13,56 @@ export class EntitySource {
|
|
|
12
13
|
this.context = context;
|
|
13
14
|
this.statements = {};
|
|
14
15
|
}
|
|
15
|
-
async saveDirect(
|
|
16
|
+
async saveDirect({ test, mode, changes, select }) {
|
|
16
17
|
const { driver } = this.context;
|
|
17
|
-
const
|
|
18
|
+
const returnFields = [];
|
|
19
|
+
if (!select) {
|
|
20
|
+
for (const iterator of this.model.columns) {
|
|
21
|
+
if (iterator.generated || iterator.key) {
|
|
22
|
+
returnFields.push(Expression.identifier(iterator.columnName));
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
for (const key in select) {
|
|
28
|
+
if (Object.prototype.hasOwnProperty.call(select, key)) {
|
|
29
|
+
const field = this.model.getField(key);
|
|
30
|
+
if (field) {
|
|
31
|
+
returnFields.push(Expression.identifier(field.columnName));
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
if (mode === "insert-select" || mode === "upsert") {
|
|
37
|
+
// check if it exits..
|
|
38
|
+
if (!test) {
|
|
39
|
+
test = {};
|
|
40
|
+
for (const iterator of this.model.keys) {
|
|
41
|
+
test[iterator.name] = changes[iterator.name];
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
const exists = driver.createSelectWithKeysExpression(this.model, test, returnFields);
|
|
45
|
+
const q = driver.compiler.compileExpression(null, exists);
|
|
46
|
+
const er = await this.context.connection.executeQuery(q);
|
|
47
|
+
if (er.rows?.[0]) {
|
|
48
|
+
const fr = er.rows[0];
|
|
49
|
+
for (const key in fr) {
|
|
50
|
+
if (Object.prototype.hasOwnProperty.call(fr, key)) {
|
|
51
|
+
const element = fr[key];
|
|
52
|
+
const name = this.model.getColumn(key).name;
|
|
53
|
+
changes[name] = element;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
if (mode !== "upsert") {
|
|
57
|
+
return changes;
|
|
58
|
+
}
|
|
59
|
+
mode = "update";
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
const expression = driver.createUpsertExpression(this.model, changes, mode, test, returnFields);
|
|
63
|
+
if (!expression) {
|
|
64
|
+
return changes;
|
|
65
|
+
}
|
|
18
66
|
const { text, values } = driver.compiler.compileExpression(null, expression);
|
|
19
67
|
const r = await this.context.connection.executeQuery({ text, values });
|
|
20
68
|
if (r.rows?.length) {
|
|
@@ -23,11 +71,11 @@ export class EntitySource {
|
|
|
23
71
|
if (Object.prototype.hasOwnProperty.call(first, key)) {
|
|
24
72
|
const element = first[key];
|
|
25
73
|
const name = this.model.getColumn(key).name;
|
|
26
|
-
|
|
74
|
+
changes[name] = element;
|
|
27
75
|
}
|
|
28
76
|
}
|
|
29
77
|
}
|
|
30
|
-
return
|
|
78
|
+
return changes;
|
|
31
79
|
}
|
|
32
80
|
add(item) {
|
|
33
81
|
const p = Object.getPrototypeOf(item).constructor;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntitySource.js","sourceRoot":"","sources":["../../src/model/EntitySource.ts"],"names":[],"mappings":"AAGA,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"EntitySource.js","sourceRoot":"","sources":["../../src/model/EntitySource.ts"],"names":[],"mappings":"AAGA,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAc,MAAM,6BAA6B,CAAC;AAGrE,MAAM,OAAO,YAAY;IAMrB,IAAI,CAAC,WAAW,CAAC;QACb,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IAED,IAAG,CAAC,aAAa,CAAC;QACd,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAKD,YACqB,KAAiB,EACjB,OAAsB;QADtB,UAAK,GAAL,KAAK,CAAY;QACjB,YAAO,GAAP,OAAO,CAAe;QAjBpC,eAAU,GAAG,EAEnB,CAAC;IAkBF,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,EACpB,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,MAAM,EAC8E;QAEpF,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;QAEhC,MAAM,YAAY,GAAG,EAAkB,CAAC;QAExC,IAAI,CAAC,MAAM,EAAE;YACT,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;gBACvC,IAAG,QAAQ,CAAC,SAAS,IAAI,QAAQ,CAAC,GAAG,EAAE;oBACnC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;iBACjE;aACJ;SACJ;aAAM;YACH,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE;gBACtB,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE;oBACnD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;oBACvC,IAAI,KAAK,EAAE;wBACP,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;qBAC9D;iBACJ;aACJ;SACJ;QAED,IAAI,IAAI,KAAK,eAAe,IAAI,IAAI,KAAK,QAAQ,EAAE;YAC/C,sBAAsB;YACtB,IAAI,CAAC,IAAI,EAAE;gBACP,IAAI,GAAG,EAAE,CAAC;gBACV,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;oBACpC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;iBAChD;aACJ;YACD,MAAM,MAAM,GAAG,MAAM,CAAC,8BAA8B,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;YACrF,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAC1D,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACzD,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;gBACd,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACtB,KAAK,MAAM,GAAG,IAAI,EAAE,EAAE;oBAClB,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE;wBAC/C,MAAM,OAAO,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;wBACxB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;wBAC5C,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;qBAC3B;iBACJ;gBAED,IAAI,IAAI,KAAK,QAAQ,EAAE;oBACnB,OAAO,OAAO,CAAC;iBAClB;gBACD,IAAI,GAAG,QAAQ,CAAC;aACnB;SACJ;QAED,MAAM,UAAU,GAAG,MAAM,CAAC,sBAAsB,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;QAChG,IAAI,CAAC,UAAU,EAAE;YACb,OAAO,OAAO,CAAC;SAClB;QACD,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAC7E,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QACvE,IAAG,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE;YACf,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACxB,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE;gBACrB,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE;oBAClD,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;oBAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;oBAC5C,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;iBAC3B;aACJ;SACJ;QACD,OAAO,OAAO,CAAC;IACnB,CAAC;IAEM,GAAG,CAAC,IAAgB;QACvB,MAAM,CAAC,GAAG,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;QAClD,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,MAAM,EAAE;YACpB,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;SAC/D;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,KAAK,CAAC,MAAM,KAAK,UAAU,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW,EAAE;YAC7D,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;SAChE;QACD,KAAK,CAAC,MAAM,GAAG,UAAU,CAAC;QAC1B,OAAO,KAAK,CAAC,MAAW,CAAC;IAC7B,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,IAAgB;QAC1B,MAAM,CAAC,GAAG,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;QAClD,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,MAAM,EAAE;YACpB,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;SAC/D;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACpD,sEAAsE;QACtE,mEAAmE;QACnE,gCAAgC;QAChC,2BAA2B;QAC3B,IAAI;QACJ,qEAAqE;QACrE,oEAAoE;QACpE,IAAI;QACJ,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC;QACzB,OAAO,KAAK,CAAC,MAAM,CAAC;IACxB,CAAC;IAEM,GAAG;QACN,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC;IAEM,QAAQ,CAAC,OAA0B,MAAM;QAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAClE,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC3E,CAAC;IAEM,KAAK,CAAI,GAAG,CAAC,SAAS,EAAE,EAAE,CAA0B;QACvD,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IAC/C,CAAC;IAEM,OAAO;QACV,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;QAChC,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;QACrD,eAAe,CAAC,KAAK,GAAG,KAAK,CAAC;QAC9B,OAAO,IAAI,WAAW,CAAI;YACtB,OAAO;YACP,IAAI,EAAE,KAAK;YACX,eAAe;SAClB,CAA2B,CAAC;IAEjC,CAAC;IAEM,OAAO;QACV,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAG,CAAC,MAAM,EAAE;YACR,OAAO,EAAE,CAAC;SACb;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAE,IAAI,CAAC,OAAO,EAAS,EAAE,MAAM,CAAC,CAAC;IAC1F,CAAC;CACJ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExpressionToSql.d.ts","sourceRoot":"","sources":["../../../src/query/ast/ExpressionToSql.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ExpressionToSql.d.ts","sourceRoot":"","sources":["../../../src/query/ast/ExpressionToSql.ts"],"names":[],"mappings":"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"}
|
|
@@ -424,7 +424,6 @@ export default class ExpressionToSql extends Visitor {
|
|
|
424
424
|
return prepare `WITH x AS(
|
|
425
425
|
INSERT INTO ${table} (${prepareJoin(insertColumns)})
|
|
426
426
|
VALUES (${prepareJoin(insertValues)})
|
|
427
|
-
LIMIT COALESCE((SELECT 1 FROM ${table} WHERE ${prepareJoin(compare, " AND ")}),2)-1
|
|
428
427
|
ON CONFLICT(${prepareJoin(compareKeys)})
|
|
429
428
|
DO NOTHING
|
|
430
429
|
${returnValues}
|
|
@@ -435,35 +434,37 @@ export default class ExpressionToSql extends Visitor {
|
|
|
435
434
|
}
|
|
436
435
|
return prepare `INSERT INTO ${table} (${prepareJoin(insertColumns)})
|
|
437
436
|
VALUES (${prepareJoin(insertValues)})
|
|
438
|
-
LIMIT COALESCE((SELECT 1 FROM ${table} WHERE ${prepareJoin(compare, " AND ")}),2)-1
|
|
439
437
|
ON CONFLICT(${prepareJoin(compareKeys)})
|
|
440
438
|
DO NOTHING`;
|
|
441
439
|
}
|
|
442
|
-
const r = prepare `INSERT INTO ${table} (${prepareJoin(insertColumns)})
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
return r;
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
440
|
+
// const r = prepare `INSERT INTO ${table} (${prepareJoin(insertColumns)})
|
|
441
|
+
// VALUES (${prepareJoin(insertValues)})
|
|
442
|
+
// ON CONFLICT(${prepareJoin(compareKeys)})
|
|
443
|
+
// DO UPDATE SET
|
|
444
|
+
// ${prepareJoin(updateSet)}
|
|
445
|
+
// ${returnValues}`;
|
|
446
|
+
// return r;
|
|
447
|
+
if (returnValues.length === 0) {
|
|
448
|
+
returnValues.push([" RETURNING * "]);
|
|
449
|
+
}
|
|
450
|
+
return prepare `
|
|
451
|
+
WITH U1 AS(
|
|
452
|
+
UPDATE ${table} SET
|
|
453
|
+
${prepareJoin(updateSet)}
|
|
454
|
+
WHERE ${prepareJoin(compare, " AND ")}
|
|
455
|
+
${returnValues}
|
|
456
|
+
),
|
|
457
|
+
I1 AS(
|
|
458
|
+
INSERT INTO ${table} (${prepareJoin(insertColumns)})
|
|
459
|
+
VALUES (${prepareJoin(insertValues)})
|
|
460
|
+
ON CONFLICT(${prepareJoin(compareKeys)})
|
|
461
|
+
DO UPDATE SET
|
|
462
|
+
${prepareJoin(updateSet)}
|
|
463
|
+
${returnValues}
|
|
464
|
+
)
|
|
465
|
+
SELECT * from U1
|
|
466
|
+
UNION
|
|
467
|
+
SELECT * from I1`;
|
|
467
468
|
}
|
|
468
469
|
visitNewObjectExpression(e) {
|
|
469
470
|
return prepare `FROM (${this.visitArray(e.properties)})`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExpressionToSql.js","sourceRoot":"","sources":["../../../src/query/ast/ExpressionToSql.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ExpressionToSql.js","sourceRoot":"","sources":["../../../src/query/ast/ExpressionToSql.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upsert-test.d.ts","sourceRoot":"","sources":["../../../../src/tests/db-tests/tests/upsert-test.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGjD,yBAA8B,IAAI,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"upsert-test.d.ts","sourceRoot":"","sources":["../../../../src/tests/db-tests/tests/upsert-test.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGjD,yBAA8B,IAAI,EAAE,UAAU,iBAyB7C"}
|
|
@@ -5,13 +5,17 @@ export default async function () {
|
|
|
5
5
|
return;
|
|
6
6
|
}
|
|
7
7
|
const context = await createContext(this.driver);
|
|
8
|
-
let
|
|
8
|
+
let changes = { address: "e@e.com" };
|
|
9
|
+
let test = { ...changes };
|
|
10
|
+
let e = await context.emailAddresses.saveDirect({ mode: "upsert", changes, test });
|
|
9
11
|
assert.strictEqual("1", e.id);
|
|
10
|
-
e = await context.emailAddresses.saveDirect({
|
|
12
|
+
e = await context.emailAddresses.saveDirect({ mode: "upsert", changes, test });
|
|
11
13
|
assert.strictEqual("1", e.id);
|
|
12
|
-
|
|
14
|
+
changes = { address: "a@e.com" };
|
|
15
|
+
test = { ...changes };
|
|
16
|
+
e = await context.emailAddresses.saveDirect({ mode: "insert-select", changes, test });
|
|
13
17
|
assert.strictEqual("2", e.id);
|
|
14
|
-
e = await context.emailAddresses.saveDirect({
|
|
18
|
+
e = await context.emailAddresses.saveDirect({ mode: "insert-select", changes, test });
|
|
15
19
|
assert.strictEqual("2", e.id);
|
|
16
20
|
await context.saveChanges();
|
|
17
21
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upsert-test.js","sourceRoot":"","sources":["../../../../src/tests/db-tests/tests/upsert-test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE7D,MAAM,CAAC,OAAO,CAAC,KAAK;IAEhB,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;QACV,OAAO;KACV;IAED,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAEjD,IAAI,CAAC,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"upsert-test.js","sourceRoot":"","sources":["../../../../src/tests/db-tests/tests/upsert-test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE7D,MAAM,CAAC,OAAO,CAAC,KAAK;IAEhB,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;QACV,OAAO;KACV;IAED,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAEjD,IAAI,OAAO,GAAG,EAAE,OAAO,EAAE,SAAS,EAAC,CAAC;IACpC,IAAI,IAAI,GAAG,EAAE,GAAI,OAAO,EAAE,CAAC;IAE3B,IAAI,CAAC,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC;IAClF,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAC9B,CAAC,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC;IAC9E,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAE9B,OAAO,GAAG,EAAE,OAAO,EAAE,SAAS,EAAC,CAAC;IAChC,IAAI,GAAG,EAAE,GAAI,OAAO,EAAE,CAAC;IACvB,CAAC,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC;IACrF,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAE9B,CAAC,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC;IACrF,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAE9B,MAAM,OAAO,CAAC,WAAW,EAAE,CAAC;AAChC,CAAC"}
|