@l-v-yonsama/multi-platform-database-drivers 0.4.12 → 0.5.5

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.
@@ -12,6 +12,7 @@ const MySQLDriver_1 = require("./MySQLDriver");
12
12
  const PostgresDriver_1 = require("./PostgresDriver");
13
13
  const RedisDriver_1 = require("./RedisDriver");
14
14
  const SQLServerDriver_1 = require("./SQLServerDriver");
15
+ const SQLiteDriver_1 = require("./SQLiteDriver");
15
16
  const uid = new short_unique_id_1.default();
16
17
  class DBDriverResolver {
17
18
  static getInstance() {
@@ -48,6 +49,9 @@ class DBDriverResolver {
48
49
  case types_1.DBType.SQLServer:
49
50
  driver = new SQLServerDriver_1.SQLServerDriver(conRes);
50
51
  break;
52
+ case types_1.DBType.SQLite:
53
+ driver = new SQLiteDriver_1.SQLiteDriver(conRes);
54
+ break;
51
55
  case types_1.DBType.Redis:
52
56
  driver = new RedisDriver_1.RedisDriver(conRes);
53
57
  break;
@@ -1 +1 @@
1
- {"version":3,"file":"DBDriverResolver.js","sourceRoot":"","sources":["../../../src/drivers/DBDriverResolver.ts"],"names":[],"mappings":";;;;AAAA,8EAA4C;AAC5C,oCAKkB;AAClB,oCAAqC;AACrC,+CAA4C;AAC5C,2CAAwC;AAExC,qDAAkD;AAClD,+CAA4C;AAC5C,qDAAkD;AAElD,+CAA4C;AAC5C,uDAAoD;AAEpD,MAAM,GAAG,GAAG,IAAI,yBAAa,EAAE,CAAC;AAEhC,MAAa,gBAAgB;IAK3B,MAAM,CAAC,WAAW;QAChB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,IAAI,CAAC,QAAQ,GAAG,IAAI,gBAAgB,EAAE,CAAC;SACxC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAGD;QACE,IAAI,CAAC,SAAS,GAAG,IAAI,GAAG,EAAsB,CAAC;IACjD,CAAC;IAED,aAAa,CAAC,YAAoB;QAChC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;YACrC,MAAM,IAAI,KAAK,CACb,+BAA+B,YAAY,cAAc,CAC1D,CAAC;SACH;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC1C,CAAC;IAED,eAAe,CAA0B,OAA0B;QACjE,IAAI,CAAC,IAAA,iBAAS,EAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YAC9B,MAAM,IAAI,KAAK,CAAC,GAAG,OAAO,CAAC,MAAM,+BAA+B,CAAC,CAAC;SACnE;QACD,OAAO,IAAI,CAAC,YAAY,CAAI,OAAO,CAAC,CAAC;IACvC,CAAC;IAED,YAAY,CAAuB,OAA0B;QAC3D,MAAM,MAAM,mCACP,OAAO,KACV,EAAE,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,GACtB,CAAC;QAEF,IAAI,MAAM,GAAe,SAAS,CAAC;QACnC,QAAQ,MAAM,CAAC,MAAM,EAAE;YAIrB,KAAK,cAAM,CAAC,KAAK;gBACf,MAAM,GAAG,IAAI,yBAAW,CAAC,MAAM,CAAC,CAAC;gBACjC,MAAM;YACR,KAAK,cAAM,CAAC,QAAQ;gBAClB,MAAM,GAAG,IAAI,+BAAc,CAAC,MAAM,CAAC,CAAC;gBACpC,MAAM;YACR,KAAK,cAAM,CAAC,SAAS;gBACnB,MAAM,GAAG,IAAI,iCAAe,CAAC,MAAM,CAAC,CAAC;gBACrC,MAAM;YACR,KAAK,cAAM,CAAC,KAAK;gBACf,MAAM,GAAG,IAAI,yBAAW,CAAC,MAAM,CAAC,CAAC;gBACjC,MAAM;YACR,KAAK,cAAM,CAAC,KAAK;gBACf,MAAM,GAAG,IAAI,yBAAW,CAAC,MAAM,CAAC,CAAC;gBACjC,MAAM;YACR,KAAK,cAAM,CAAC,QAAQ;gBAClB,MAAM,GAAG,IAAI,+BAAc,CAAC,MAAM,CAAC,CAAC;gBACpC,MAAM;YAIR,KAAK,cAAM,CAAC,GAAG;gBACb,MAAM,GAAG,IAAI,qBAAS,CAAC,MAAM,CAAC,CAAC;gBAC/B,MAAM;YAOR;gBACE,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,oBAAoB,CAAC,CAAC;SACzD;QAED,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QACtC,OAAO,MAAW,CAAC;IACrB,CAAC;IAEK,QAAQ,CACZ,OAA0B,EAC1B,CAA4B;;YAE5B,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAI,OAAO,CAAC,CAAC;YAC7C,MAAM,CAAC,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC/B,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YAC1B,OAAO,CAAC,CAAC;QACX,CAAC;KAAA;IAEK,eAAe,CACnB,OAA0B,EAC1B,CAA4B,EAC5B,OAEC;;YAED,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAI,OAAO,CAAC,CAAC;YAC7C,MAAM,CAAC,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YACnD,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YAC1B,OAAO,CAAC,CAAC;QACX,CAAC;KAAA;IAED,YAAY,CAAC,MAAkB;QAC7B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC,EAAE,CAAC,CAAC;IACtD,CAAC;IAEK,QAAQ;;YACZ,IAAI,YAAY,GAAG,EAAE,CAAC;YACtB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAO,MAAkB,EAAE,EAAE;gBAClD,IAAI;oBACF,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC;iBAC3B;gBAAC,OAAO,CAAC,EAAE;oBACV,YAAY,IAAI,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC;iBAClC;YACH,CAAC,CAAA,CAAC,CAAC;YACH,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;YACvB,OAAO,YAAY,CAAC;QACtB,CAAC;KAAA;CACF;AAzHD,4CAyHC"}
1
+ {"version":3,"file":"DBDriverResolver.js","sourceRoot":"","sources":["../../../src/drivers/DBDriverResolver.ts"],"names":[],"mappings":"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"}
@@ -55,20 +55,20 @@ class RDSBaseDriver extends BaseDriver_1.BaseDriver {
55
55
  var _a, _b, _c;
56
56
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
57
57
  const { sql, conditions } = params;
58
- let ast = undefined;
58
+ let qst = undefined;
59
59
  let dbTable = undefined;
60
60
  if ((conditions === null || conditions === void 0 ? void 0 : conditions.rawQueries) !== true) {
61
- ast = (0, helpers_1.parseQuery)(sql);
62
- dbTable = this.getDbTable(ast);
63
- if ((_a = ast === null || ast === void 0 ? void 0 : ast.ast) === null || _a === void 0 ? void 0 : _a.type) {
61
+ qst = (0, helpers_1.parseQuery)(sql);
62
+ dbTable = this.getDbTable(qst);
63
+ if ((_a = qst === null || qst === void 0 ? void 0 : qst.ast) === null || _a === void 0 ? void 0 : _a.type) {
64
64
  if (!params.meta) {
65
65
  params.meta = {};
66
66
  }
67
- params.meta.type = (_b = ast === null || ast === void 0 ? void 0 : ast.ast) === null || _b === void 0 ? void 0 : _b.type;
67
+ params.meta.type = (_b = qst === null || qst === void 0 ? void 0 : qst.ast) === null || _b === void 0 ? void 0 : _b.type;
68
68
  }
69
69
  }
70
70
  const rdb = yield this.requestSqlSub(Object.assign(Object.assign({}, params), { dbTable }));
71
- this.setRdhMetaAndStatement(params, rdb, (_c = ast === null || ast === void 0 ? void 0 : ast.ast) === null || _c === void 0 ? void 0 : _c.type, ast, dbTable);
71
+ this.setRdhMetaAndStatement(params, rdb, (_c = qst === null || qst === void 0 ? void 0 : qst.ast) === null || _c === void 0 ? void 0 : _c.type, qst, dbTable);
72
72
  return rdb.build();
73
73
  });
74
74
  }
@@ -0,0 +1,37 @@
1
+ import { ResultSetDataBuilder } from '@l-v-yonsama/rdh';
2
+ import { DbTable, RdsDatabase } from '../resource';
3
+ import { ConnectionSetting, QueryParams } from '../types';
4
+ import { RDSBaseDriver } from './RDSBaseDriver';
5
+ export declare class SQLiteDriver extends RDSBaseDriver {
6
+ explainAnalyzeSqlSub(params: QueryParams & {
7
+ dbTable: DbTable;
8
+ }): Promise<ResultSetDataBuilder>;
9
+ private db;
10
+ private interrupted;
11
+ constructor(conRes: ConnectionSetting);
12
+ begin(): Promise<void>;
13
+ commit(): Promise<void>;
14
+ rollback(): Promise<void>;
15
+ setAutoCommit(value: boolean): Promise<void>;
16
+ connectWithTest(): Promise<string>;
17
+ kill(): Promise<string>;
18
+ protected getTestSqlStatement(): string;
19
+ private isQueryType;
20
+ requestSqlSub(params: QueryParams & {
21
+ dbTable: DbTable;
22
+ }): Promise<ResultSetDataBuilder>;
23
+ explainSqlSub(params: QueryParams & {
24
+ dbTable: DbTable;
25
+ }): Promise<ResultSetDataBuilder>;
26
+ getInfomationSchemasSub(): Promise<Array<RdsDatabase>>;
27
+ private setForinKeys;
28
+ private setUniqueKeys;
29
+ private parseColumnType;
30
+ isPositionedParameterAvailable(): boolean;
31
+ getPositionalCharacter(): string | undefined;
32
+ isLimitAsTop(): boolean;
33
+ isSchemaSpecificationSvailable(): boolean;
34
+ closeSub(): Promise<string>;
35
+ private createConnection;
36
+ private exec;
37
+ }
@@ -0,0 +1,412 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SQLiteDriver = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const rdh_1 = require("@l-v-yonsama/rdh");
6
+ const fs = tslib_1.__importStar(require("fs"));
7
+ const sql_wasm_js_1 = tslib_1.__importDefault(require("sql.js/dist/sql-wasm.js"));
8
+ const helpers_1 = require("../helpers");
9
+ const resource_1 = require("../resource");
10
+ const RDSBaseDriver_1 = require("./RDSBaseDriver");
11
+ class SQLiteDriver extends RDSBaseDriver_1.RDSBaseDriver {
12
+ explainAnalyzeSqlSub(params) {
13
+ throw new Error('SQLite does not support explain analyze');
14
+ }
15
+ constructor(conRes) {
16
+ super(conRes);
17
+ this.interrupted = false;
18
+ }
19
+ begin() {
20
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
21
+ yield this.requestSql({ sql: 'BEGIN' });
22
+ });
23
+ }
24
+ commit() {
25
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
26
+ yield this.requestSql({ sql: 'COMMIT' });
27
+ });
28
+ }
29
+ rollback() {
30
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
31
+ yield this.requestSql({ sql: 'ROLLBACK' });
32
+ });
33
+ }
34
+ setAutoCommit(value) {
35
+ return tslib_1.__awaiter(this, void 0, void 0, function* () { });
36
+ }
37
+ connectWithTest() {
38
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
39
+ let errorMessage = '';
40
+ yield this.createConnection();
41
+ try {
42
+ errorMessage = yield this.test();
43
+ }
44
+ catch (e) {
45
+ errorMessage = e.message;
46
+ }
47
+ return errorMessage;
48
+ });
49
+ }
50
+ kill() {
51
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
52
+ this.interrupted = true;
53
+ return '';
54
+ });
55
+ }
56
+ getTestSqlStatement() {
57
+ return 'SELECT 1';
58
+ }
59
+ isQueryType(type, sql) {
60
+ if (type === 'select' || type === 'show') {
61
+ return true;
62
+ }
63
+ if (type === 'pragma') {
64
+ if (/\s*pragma [a-zA-Z0-9-_.()]+\s*=\s*.+/i.test(sql)) {
65
+ return false;
66
+ }
67
+ return true;
68
+ }
69
+ return false;
70
+ }
71
+ requestSqlSub(params) {
72
+ var _a;
73
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
74
+ this.interrupted = false;
75
+ const { sql, conditions, dbTable, meta } = params;
76
+ let rdb;
77
+ if (!this.db) {
78
+ throw new Error('No database');
79
+ }
80
+ const binds = (_a = conditions === null || conditions === void 0 ? void 0 : conditions.binds) !== null && _a !== void 0 ? _a : [];
81
+ const startTime = new Date().getTime();
82
+ if (this.isQueryType(meta.type, sql)) {
83
+ const st = this.db.prepare(sql, binds);
84
+ const fields = st.getColumnNames();
85
+ if (meta.editable && dbTable) {
86
+ rdb = new rdh_1.ResultSetDataBuilder(fields.map((it) => {
87
+ const col = dbTable.getChildByName(it);
88
+ return (0, rdh_1.createRdhKey)({
89
+ name: it,
90
+ type: col === null || col === void 0 ? void 0 : col.colType,
91
+ required: (col === null || col === void 0 ? void 0 : col.nullable) === false,
92
+ comment: col === null || col === void 0 ? void 0 : col.comment,
93
+ });
94
+ }));
95
+ }
96
+ else {
97
+ rdb = new rdh_1.ResultSetDataBuilder(fields.map((it) => it));
98
+ }
99
+ while (st.step()) {
100
+ if (rdb.rs.rows.length % 2000 === 0) {
101
+ yield (0, rdh_1.sleep)(5);
102
+ }
103
+ if (this.interrupted) {
104
+ this.interrupted = false;
105
+ st.free();
106
+ st.freemem();
107
+ throw new Error('SQLITE_INTERRUPT');
108
+ }
109
+ const values = st.getAsObject();
110
+ fields.forEach((it) => {
111
+ const v = values[it];
112
+ if (v && v instanceof Uint8Array) {
113
+ values[it] = Buffer.from(v);
114
+ }
115
+ });
116
+ rdb.addRow(values);
117
+ }
118
+ const elapsedTimeMilli = new Date().getTime() - startTime;
119
+ rdb.resetKeyTypeByRows();
120
+ rdb.setSummary({
121
+ elapsedTimeMilli,
122
+ selectedRows: rdb.rs.rows.length,
123
+ });
124
+ st.free();
125
+ st.freemem();
126
+ }
127
+ else {
128
+ const { affectedRows, insertId } = yield this.exec(sql, (meta === null || meta === void 0 ? void 0 : meta.type) === 'insert', binds);
129
+ const elapsedTimeMilli = new Date().getTime() - startTime;
130
+ rdb = new rdh_1.ResultSetDataBuilder([
131
+ (0, rdh_1.createRdhKey)({
132
+ name: 'affectedRows',
133
+ type: rdh_1.GeneralColumnType.INTEGER,
134
+ }),
135
+ (0, rdh_1.createRdhKey)({ name: 'insertId', type: rdh_1.GeneralColumnType.INTEGER }),
136
+ ]);
137
+ rdb.addRow({
138
+ affectedRows,
139
+ insertId,
140
+ });
141
+ rdb.setSummary({
142
+ elapsedTimeMilli,
143
+ affectedRows,
144
+ insertId,
145
+ });
146
+ }
147
+ return rdb;
148
+ });
149
+ }
150
+ explainSqlSub(params) {
151
+ var _a, _b;
152
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
153
+ const ast = (0, helpers_1.parseQuery)(params.sql);
154
+ const explainParams = Object.assign(Object.assign({}, params), { sql: `EXPLAIN QUERY PLAN ${params.sql}` });
155
+ if ((_a = ast === null || ast === void 0 ? void 0 : ast.ast) === null || _a === void 0 ? void 0 : _a.type) {
156
+ if (!explainParams.meta) {
157
+ explainParams.meta = {};
158
+ }
159
+ explainParams.meta.type = (_b = ast === null || ast === void 0 ? void 0 : ast.ast) === null || _b === void 0 ? void 0 : _b.type;
160
+ }
161
+ const rdb = yield this.requestSqlSub(explainParams);
162
+ return rdb;
163
+ });
164
+ }
165
+ getInfomationSchemasSub() {
166
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
167
+ const dbResources = new Array();
168
+ const dbDatabase = new resource_1.RdsDatabase(this.conRes.database);
169
+ dbResources.push(dbDatabase);
170
+ const defaultSchema = new resource_1.DbSchema('Default');
171
+ defaultSchema.isDefault = true;
172
+ dbDatabase.addChild(defaultSchema);
173
+ let beforeTableRes = undefined;
174
+ const tableRs = yield this.requestSql({
175
+ sql: `
176
+ SELECT
177
+ m.name AS tableName,
178
+ p.name AS colName,
179
+ p.type AS colType,
180
+ p.pk AS colIsPk,
181
+ p.dflt_value AS colDefaultVal,
182
+ p.[notnull] AS colIsNotNull,
183
+ m.sql
184
+ FROM sqlite_master m
185
+ LEFT OUTER JOIN pragma_table_info((m.name)) p
186
+ ON m.name <> p.name
187
+ WHERE m.type = 'table'
188
+ ORDER BY m.name, p.cid`,
189
+ });
190
+ tableRs.rows.forEach((row) => {
191
+ const { values: it } = row;
192
+ if (beforeTableRes === undefined ||
193
+ beforeTableRes.name !== it.tableName) {
194
+ beforeTableRes = new resource_1.DbTable(it.tableName, 'TABLE');
195
+ defaultSchema.addChild(beforeTableRes);
196
+ }
197
+ const colType = this.parseColumnType(it.colType);
198
+ const nullable = it.colIsNotNull === 0;
199
+ const key = it.colIsPk > 0 ? 'PRI' : '';
200
+ let extra = '';
201
+ if (it.colIsPk === 1 &&
202
+ colType === rdh_1.GeneralColumnType.INTEGER &&
203
+ it.sql.toLocaleLowerCase().includes('autoincrement')) {
204
+ extra = 'auto_increment';
205
+ }
206
+ const colRes = new resource_1.DbColumn(it.colName, colType, {
207
+ nullable,
208
+ key,
209
+ default: it.colDefaultVal,
210
+ extra,
211
+ });
212
+ beforeTableRes.addChild(colRes);
213
+ });
214
+ yield this.setForinKeys(defaultSchema);
215
+ yield this.setUniqueKeys(defaultSchema);
216
+ return dbResources;
217
+ });
218
+ }
219
+ setForinKeys(dbSchema) {
220
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
221
+ const rdh = yield this.requestSql({
222
+ sql: `
223
+ SELECT
224
+ m.tbl_name as table_name,
225
+ p.[from] as column_name,
226
+ p.[table] as referenced_table_name,
227
+ p.[to] as referenced_column_name
228
+ FROM sqlite_master AS m
229
+ INNER JOIN pragma_foreign_key_list(m.name) AS p ON m.name != p."table"
230
+ `,
231
+ });
232
+ rdh.rows.forEach((row) => {
233
+ const { values: it } = row;
234
+ const tableName = it['table_name'];
235
+ const columnName = it['column_name'];
236
+ const referencedTableName = it['referenced_table_name'];
237
+ const referencedColumnName = it['referenced_column_name'];
238
+ const tableRes = dbSchema.getChildByName(tableName);
239
+ if (tableRes) {
240
+ if (tableRes.getChildByName(columnName)) {
241
+ if (tableRes.foreignKeys === undefined) {
242
+ tableRes.foreignKeys = {};
243
+ }
244
+ if (tableRes.foreignKeys.referenceTo === undefined) {
245
+ tableRes.foreignKeys.referenceTo = {};
246
+ }
247
+ tableRes.foreignKeys.referenceTo[columnName] = {
248
+ tableName: referencedTableName,
249
+ columnName: referencedColumnName,
250
+ constraintName: '',
251
+ };
252
+ }
253
+ }
254
+ const tableRes2 = dbSchema.getChildByName(referencedTableName);
255
+ if (tableRes2) {
256
+ if (tableRes2.getChildByName(referencedColumnName)) {
257
+ if (tableRes2.foreignKeys === undefined) {
258
+ tableRes2.foreignKeys = {};
259
+ }
260
+ if (tableRes2.foreignKeys.referencedFrom === undefined) {
261
+ tableRes2.foreignKeys.referencedFrom = {};
262
+ }
263
+ tableRes2.foreignKeys.referencedFrom[referencedColumnName] = {
264
+ tableName: tableName,
265
+ columnName: columnName,
266
+ constraintName: '',
267
+ };
268
+ }
269
+ }
270
+ });
271
+ });
272
+ }
273
+ setUniqueKeys(dbSchema) {
274
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
275
+ const rdh = yield this.requestSql({
276
+ sql: `
277
+ SELECT
278
+ m.tbl_name as tableName,
279
+ il.name as keyName,
280
+ group_concat(ii.name) as columnNames
281
+ FROM sqlite_master AS m,
282
+ pragma_index_list(m.name) AS il,
283
+ pragma_index_info(il.name) AS ii
284
+ WHERE
285
+ m.type = 'table'
286
+ AND il.origin='u'
287
+ GROUP by m.tbl_name,il.name
288
+ ORDER BY m.tbl_name,il.name
289
+ `,
290
+ });
291
+ rdh.rows.forEach((row) => {
292
+ const { values: it } = row;
293
+ const tableRes = dbSchema.getChildByName(it.tableName);
294
+ if (tableRes) {
295
+ if (tableRes.uniqueKeys === undefined) {
296
+ tableRes.uniqueKeys = [];
297
+ }
298
+ const constraint = {
299
+ name: it.keyName,
300
+ columns: it.columnNames.split(','),
301
+ };
302
+ tableRes.uniqueKeys.push(constraint);
303
+ constraint.columns.forEach((columnName) => {
304
+ const colRes = tableRes.getChildByName(columnName);
305
+ if (colRes) {
306
+ colRes['uniqKey'] = true;
307
+ }
308
+ });
309
+ }
310
+ });
311
+ });
312
+ }
313
+ parseColumnType(typeString) {
314
+ if (typeString == null || typeString === '') {
315
+ return rdh_1.GeneralColumnType.UNKNOWN;
316
+ }
317
+ switch (typeString.toLocaleLowerCase()) {
318
+ case 'blob':
319
+ return rdh_1.GeneralColumnType.BLOB;
320
+ case 'text':
321
+ return rdh_1.GeneralColumnType.TEXT;
322
+ case 'date':
323
+ return rdh_1.GeneralColumnType.TEXT;
324
+ case 'datetime':
325
+ return rdh_1.GeneralColumnType.TEXT;
326
+ case 'real':
327
+ return rdh_1.GeneralColumnType.REAL;
328
+ case 'integer':
329
+ return rdh_1.GeneralColumnType.INTEGER;
330
+ }
331
+ const typeString2 = (0, rdh_1.parseColumnType)(typeString.replace(/\([0-9.,]+\)/, ''));
332
+ if ((0, rdh_1.isTextLike)(typeString2)) {
333
+ return rdh_1.GeneralColumnType.TEXT;
334
+ }
335
+ if ((0, rdh_1.isBinaryLike)(typeString2)) {
336
+ return rdh_1.GeneralColumnType.BLOB;
337
+ }
338
+ return rdh_1.GeneralColumnType.UNKNOWN;
339
+ }
340
+ isPositionedParameterAvailable() {
341
+ return false;
342
+ }
343
+ getPositionalCharacter() {
344
+ return undefined;
345
+ }
346
+ isLimitAsTop() {
347
+ return false;
348
+ }
349
+ isSchemaSpecificationSvailable() {
350
+ return false;
351
+ }
352
+ closeSub() {
353
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
354
+ const { database } = this.conRes;
355
+ try {
356
+ if (this.db) {
357
+ fs.writeFileSync(database, Buffer.from(this.db.export()));
358
+ yield this.db.close();
359
+ this.db = undefined;
360
+ this.interrupted = false;
361
+ }
362
+ return '';
363
+ }
364
+ catch (e) {
365
+ return e.message;
366
+ }
367
+ });
368
+ }
369
+ createConnection() {
370
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
371
+ this.interrupted = false;
372
+ const { database } = this.conRes;
373
+ const buff = fs.existsSync(database)
374
+ ? yield fs.promises.readFile(database)
375
+ : null;
376
+ const sqlite = yield (0, sql_wasm_js_1.default)();
377
+ this.db = new sqlite.Database(buff);
378
+ yield this.requestSql({
379
+ sql: 'pragma journal_mode = WAL',
380
+ conditions: { rawQueries: true },
381
+ meta: { type: 'pragma' },
382
+ });
383
+ yield this.requestSql({
384
+ sql: 'pragma foreign_keys = true',
385
+ conditions: { rawQueries: true },
386
+ meta: { type: 'pragma' },
387
+ });
388
+ });
389
+ }
390
+ exec(sql, withInsertId, binds) {
391
+ var _a;
392
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
393
+ this.db.run(sql, binds);
394
+ const affectedRows = this.db.getRowsModified();
395
+ let insertId;
396
+ if (withInsertId) {
397
+ if (this.interrupted) {
398
+ this.interrupted = false;
399
+ throw new Error('SQLITE_INTERRUPT');
400
+ }
401
+ const r = this.db.exec('SELECT last_insert_rowid() as lastId;');
402
+ insertId = (_a = r === null || r === void 0 ? void 0 : r[0]) === null || _a === void 0 ? void 0 : _a.values[0][0];
403
+ }
404
+ return {
405
+ affectedRows,
406
+ insertId,
407
+ };
408
+ });
409
+ }
410
+ }
411
+ exports.SQLiteDriver = SQLiteDriver;
412
+ //# sourceMappingURL=SQLiteDriver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SQLiteDriver.js","sourceRoot":"","sources":["../../../src/drivers/SQLiteDriver.ts"],"names":[],"mappings":";;;;AAAA,0CAQ0B;AAC1B,+CAAyB;AACzB,kFAA6E;AAC7E,wCAAwC;AACxC,0CAAuE;AAEvE,mDAAgD;AAOhD,MAAa,YAAa,SAAQ,6BAAa;IAC7C,oBAAoB,CAClB,MAA0C;QAE1C,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAC7D,CAAC;IAID,YAAY,MAAyB;QACnC,KAAK,CAAC,MAAM,CAAC,CAAC;QAHR,gBAAW,GAAG,KAAK,CAAC;IAI5B,CAAC;IAEK,KAAK;;YACT,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;QAC1C,CAAC;KAAA;IAEK,MAAM;;YACV,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC3C,CAAC;KAAA;IAEK,QAAQ;;YACZ,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC;QAC7C,CAAC;KAAA;IAGK,aAAa,CAAC,KAAc;sEAAkB,CAAC;KAAA;IAE/C,eAAe;;YACnB,IAAI,YAAY,GAAG,EAAE,CAAC;YACtB,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC9B,IAAI;gBACF,YAAY,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;aAClC;YAAC,OAAO,CAAC,EAAE;gBACV,YAAY,GAAG,CAAC,CAAC,OAAO,CAAC;aAC1B;YACD,OAAO,YAAY,CAAC;QACtB,CAAC;KAAA;IAEK,IAAI;;YACR,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YACxB,OAAO,EAAE,CAAC;QACZ,CAAC;KAAA;IAES,mBAAmB;QAC3B,OAAO,UAAU,CAAC;IACpB,CAAC;IAEO,WAAW,CAAC,IAAY,EAAE,GAAW;QAC3C,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,MAAM,EAAE;YACxC,OAAO,IAAI,CAAC;SACb;QACD,IAAI,IAAI,KAAK,QAAQ,EAAE;YACrB,IAAI,uCAAuC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;gBACrD,OAAO,KAAK,CAAC;aACd;YACD,OAAO,IAAI,CAAC;SACb;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEK,aAAa,CACjB,MAA0C;;;YAE1C,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;YACzB,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;YAClD,IAAI,GAAyB,CAAC;YAE9B,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;gBACZ,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;aAChC;YAED,MAAM,KAAK,GAAG,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,mCAAI,EAAE,CAAC;YACtC,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;YAEvC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE;gBACpC,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBACvC,MAAM,MAAM,GAAG,EAAE,CAAC,cAAc,EAAE,CAAC;gBACnC,IAAI,IAAI,CAAC,QAAQ,IAAI,OAAO,EAAE;oBAC5B,GAAG,GAAG,IAAI,0BAAoB,CAC5B,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;wBAChB,MAAM,GAAG,GAAG,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;wBACvC,OAAO,IAAA,kBAAY,EAAC;4BAClB,IAAI,EAAE,EAAE;4BACR,IAAI,EAAE,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO;4BAClB,QAAQ,EAAE,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,QAAQ,MAAK,KAAK;4BACjC,OAAO,EAAE,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO;yBACtB,CAAC,CAAC;oBACL,CAAC,CAAC,CACH,CAAC;iBACH;qBAAM;oBACL,GAAG,GAAG,IAAI,0BAAoB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;iBACxD;gBAED,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;oBAChB,IAAI,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,KAAK,CAAC,EAAE;wBACnC,MAAM,IAAA,WAAK,EAAC,CAAC,CAAC,CAAC;qBAChB;oBACD,IAAI,IAAI,CAAC,WAAW,EAAE;wBACpB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;wBACzB,EAAE,CAAC,IAAI,EAAE,CAAC;wBACV,EAAE,CAAC,OAAO,EAAE,CAAC;wBACb,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;qBACrC;oBACD,MAAM,MAAM,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC;oBAChC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;wBACpB,MAAM,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;wBACrB,IAAI,CAAC,IAAI,CAAC,YAAY,UAAU,EAAE;4BAChC,MAAM,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;yBAC7B;oBACH,CAAC,CAAC,CAAC;oBAEH,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;iBACpB;gBACD,MAAM,gBAAgB,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC;gBAC1D,GAAG,CAAC,kBAAkB,EAAE,CAAC;gBACzB,GAAG,CAAC,UAAU,CAAC;oBACb,gBAAgB;oBAChB,YAAY,EAAE,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM;iBACjC,CAAC,CAAC;gBACH,EAAE,CAAC,IAAI,EAAE,CAAC;gBACV,EAAE,CAAC,OAAO,EAAE,CAAC;aACd;iBAAM;gBACL,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,CAChD,GAAG,EACH,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,MAAK,QAAQ,EACvB,KAAK,CACN,CAAC;gBACF,MAAM,gBAAgB,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC;gBAC1D,GAAG,GAAG,IAAI,0BAAoB,CAAC;oBAC7B,IAAA,kBAAY,EAAC;wBACX,IAAI,EAAE,cAAc;wBACpB,IAAI,EAAE,uBAAiB,CAAC,OAAO;qBAChC,CAAC;oBACF,IAAA,kBAAY,EAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,uBAAiB,CAAC,OAAO,EAAE,CAAC;iBACpE,CAAC,CAAC;gBACH,GAAG,CAAC,MAAM,CAAC;oBACT,YAAY;oBACZ,QAAQ;iBACT,CAAC,CAAC;gBACH,GAAG,CAAC,UAAU,CAAC;oBACb,gBAAgB;oBAChB,YAAY;oBACZ,QAAQ;iBACT,CAAC,CAAC;aACJ;YACD,OAAO,GAAG,CAAC;;KACZ;IAEK,aAAa,CACjB,MAA0C;;;YAE1C,MAAM,GAAG,GAAG,IAAA,oBAAU,EAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACnC,MAAM,aAAa,mCACd,MAAM,KACT,GAAG,EAAE,sBAAsB,MAAM,CAAC,GAAG,EAAE,GACxC,CAAC;YACF,IAAI,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,GAAG,0CAAE,IAAI,EAAE;gBAClB,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE;oBACvB,aAAa,CAAC,IAAI,GAAG,EAAE,CAAC;iBACzB;gBACD,aAAa,CAAC,IAAI,CAAC,IAAI,GAAG,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,GAAG,0CAAE,IAAI,CAAC;aAC1C;YAED,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;YAEpD,OAAO,GAAG,CAAC;;KACZ;IAEK,uBAAuB;;YAC3B,MAAM,WAAW,GAAG,IAAI,KAAK,EAAe,CAAC;YAC7C,MAAM,UAAU,GAAG,IAAI,sBAAW,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACzD,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAE7B,MAAM,aAAa,GAAG,IAAI,mBAAQ,CAAC,SAAS,CAAC,CAAC;YAC9C,aAAa,CAAC,SAAS,GAAG,IAAI,CAAC;YAC/B,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;YAEnC,IAAI,cAAc,GAAwB,SAAS,CAAC;YACpD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC;gBACpC,GAAG,EAAE;;;;;;;;;;;;;2BAagB;aACtB,CAAC,CAAC;YAEH,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;gBAC3B,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,GAAG,CAAC;gBAC3B,IACE,cAAc,KAAK,SAAS;oBAC5B,cAAc,CAAC,IAAI,KAAK,EAAE,CAAC,SAAS,EACpC;oBACA,cAAc,GAAG,IAAI,kBAAO,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;oBACpD,aAAa,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;iBACxC;gBACD,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;gBACjD,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC;gBACvC,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxC,IAAI,KAAK,GAAG,EAAE,CAAC;gBACf,IACE,EAAE,CAAC,OAAO,KAAK,CAAC;oBAChB,OAAO,KAAK,uBAAiB,CAAC,OAAO;oBACrC,EAAE,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC,EACpD;oBACA,KAAK,GAAG,gBAAgB,CAAC;iBAC1B;gBACD,MAAM,MAAM,GAAG,IAAI,mBAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE;oBAC/C,QAAQ;oBACR,GAAG;oBACH,OAAO,EAAE,EAAE,CAAC,aAAa;oBACzB,KAAK;iBACN,CAAC,CAAC;gBACH,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAClC,CAAC,CAAC,CAAC;YAEH,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;YACvC,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;YACxC,OAAO,WAAW,CAAC;QACrB,CAAC;KAAA;IAEa,YAAY,CAAC,QAAkB;;YAC3C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC;gBAChC,GAAG,EAAE;;;;;;;;WAQA;aACN,CAAC,CAAC;YAEH,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;gBACvB,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,GAAG,CAAC;gBAC3B,MAAM,SAAS,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC;gBACnC,MAAM,UAAU,GAAG,EAAE,CAAC,aAAa,CAAC,CAAC;gBACrC,MAAM,mBAAmB,GAAG,EAAE,CAAC,uBAAuB,CAAC,CAAC;gBACxD,MAAM,oBAAoB,GAAG,EAAE,CAAC,wBAAwB,CAAC,CAAC;gBAG1D,MAAM,QAAQ,GAAG,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;gBACpD,IAAI,QAAQ,EAAE;oBACZ,IAAI,QAAQ,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE;wBACvC,IAAI,QAAQ,CAAC,WAAW,KAAK,SAAS,EAAE;4BACtC,QAAQ,CAAC,WAAW,GAAG,EAAE,CAAC;yBAC3B;wBACD,IAAI,QAAQ,CAAC,WAAW,CAAC,WAAW,KAAK,SAAS,EAAE;4BAClD,QAAQ,CAAC,WAAW,CAAC,WAAW,GAAG,EAAE,CAAC;yBACvC;wBACD,QAAQ,CAAC,WAAW,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG;4BAC7C,SAAS,EAAE,mBAAmB;4BAC9B,UAAU,EAAE,oBAAoB;4BAChC,cAAc,EAAE,EAAE;yBACnB,CAAC;qBACH;iBACF;gBAID,MAAM,SAAS,GAAG,QAAQ,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAC;gBAC/D,IAAI,SAAS,EAAE;oBACb,IAAI,SAAS,CAAC,cAAc,CAAC,oBAAoB,CAAC,EAAE;wBAClD,IAAI,SAAS,CAAC,WAAW,KAAK,SAAS,EAAE;4BACvC,SAAS,CAAC,WAAW,GAAG,EAAE,CAAC;yBAC5B;wBACD,IAAI,SAAS,CAAC,WAAW,CAAC,cAAc,KAAK,SAAS,EAAE;4BACtD,SAAS,CAAC,WAAW,CAAC,cAAc,GAAG,EAAE,CAAC;yBAC3C;wBACD,SAAS,CAAC,WAAW,CAAC,cAAc,CAAC,oBAAoB,CAAC,GAAG;4BAC3D,SAAS,EAAE,SAAS;4BACpB,UAAU,EAAE,UAAU;4BACtB,cAAc,EAAE,EAAE;yBACnB,CAAC;qBACH;iBACF;YACH,CAAC,CAAC,CAAC;QACL,CAAC;KAAA;IAEa,aAAa,CAAC,QAAkB;;YAC5C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC;gBAChC,GAAG,EAAE;;;;;;;;;;;;;aAaE;aACR,CAAC,CAAC;YAEH,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;gBACvB,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,GAAG,CAAC;gBAC3B,MAAM,QAAQ,GAAG,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;gBACvD,IAAI,QAAQ,EAAE;oBACZ,IAAI,QAAQ,CAAC,UAAU,KAAK,SAAS,EAAE;wBACrC,QAAQ,CAAC,UAAU,GAAG,EAAE,CAAC;qBAC1B;oBACD,MAAM,UAAU,GAAG;wBACjB,IAAI,EAAE,EAAE,CAAC,OAAO;wBAChB,OAAO,EAAE,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC;qBACnC,CAAC;oBACF,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBACrC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;wBACxC,MAAM,MAAM,GAAG,QAAQ,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;wBACnD,IAAI,MAAM,EAAE;4BACT,MAAc,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;yBACnC;oBACH,CAAC,CAAC,CAAC;iBACJ;YACH,CAAC,CAAC,CAAC;QACL,CAAC;KAAA;IAEO,eAAe,CAAC,UAAkB;QACxC,IAAI,UAAU,IAAI,IAAI,IAAI,UAAU,KAAK,EAAE,EAAE;YAC3C,OAAO,uBAAiB,CAAC,OAAO,CAAC;SAClC;QACD,QAAQ,UAAU,CAAC,iBAAiB,EAAE,EAAE;YACtC,KAAK,MAAM;gBACT,OAAO,uBAAiB,CAAC,IAAI,CAAC;YAChC,KAAK,MAAM;gBACT,OAAO,uBAAiB,CAAC,IAAI,CAAC;YAChC,KAAK,MAAM;gBACT,OAAO,uBAAiB,CAAC,IAAI,CAAC;YAChC,KAAK,UAAU;gBACb,OAAO,uBAAiB,CAAC,IAAI,CAAC;YAChC,KAAK,MAAM;gBACT,OAAO,uBAAiB,CAAC,IAAI,CAAC;YAChC,KAAK,SAAS;gBACZ,OAAO,uBAAiB,CAAC,OAAO,CAAC;SACpC;QAGD,MAAM,WAAW,GAAG,IAAA,qBAAsB,EACxC,UAAU,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CACvC,CAAC;QACF,IAAI,IAAA,gBAAU,EAAC,WAAW,CAAC,EAAE;YAC3B,OAAO,uBAAiB,CAAC,IAAI,CAAC;SAC/B;QACD,IAAI,IAAA,kBAAY,EAAC,WAAW,CAAC,EAAE;YAC7B,OAAO,uBAAiB,CAAC,IAAI,CAAC;SAC/B;QAED,OAAO,uBAAiB,CAAC,OAAO,CAAC;IACnC,CAAC;IAED,8BAA8B;QAC5B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,sBAAsB;QACpB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,YAAY;QACV,OAAO,KAAK,CAAC;IACf,CAAC;IAED,8BAA8B;QAC5B,OAAO,KAAK,CAAC;IACf,CAAC;IAEK,QAAQ;;YACZ,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC;YACjC,IAAI;gBACF,IAAI,IAAI,CAAC,EAAE,EAAE;oBACX,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;oBAC1D,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;oBACtB,IAAI,CAAC,EAAE,GAAG,SAAS,CAAC;oBACpB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;iBAC1B;gBACD,OAAO,EAAE,CAAC;aACX;YAAC,OAAO,CAAC,EAAE;gBACV,OAAO,CAAC,CAAC,OAAO,CAAC;aAClB;QACH,CAAC;KAAA;IAEa,gBAAgB;;YAC5B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;YACzB,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC;YACjC,MAAM,IAAI,GAAG,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;gBAClC,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBACtC,CAAC,CAAC,IAAI,CAAC;YACT,MAAM,MAAM,GAAG,MAAM,IAAA,qBAAO,GAAE,CAAC;YAC/B,IAAI,CAAC,EAAE,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAEpC,MAAM,IAAI,CAAC,UAAU,CAAC;gBACpB,GAAG,EAAE,2BAA2B;gBAChC,UAAU,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE;gBAChC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aACzB,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,UAAU,CAAC;gBACpB,GAAG,EAAE,4BAA4B;gBACjC,UAAU,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE;gBAChC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aACzB,CAAC,CAAC;QACL,CAAC;KAAA;IAEa,IAAI,CAChB,GAAW,EACX,YAAY,EACZ,KAAkB;;;YAElB,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACxB,MAAM,YAAY,GAAG,IAAI,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC;YAC/C,IAAI,QAA4B,CAAC;YACjC,IAAI,YAAY,EAAE;gBAChB,IAAI,IAAI,CAAC,WAAW,EAAE;oBACpB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;oBACzB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;iBACrC;gBACD,MAAM,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;gBAChE,QAAQ,GAAG,MAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAG,CAAC,CAAC,0CAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAW,CAAC;aAC3C;YACD,OAAO;gBACL,YAAY;gBACZ,QAAQ;aACT,CAAC;;KACH;CACF;AAnbD,oCAmbC"}
@@ -9,4 +9,5 @@ export * from './MySQLDriver';
9
9
  export * from './PostgresDriver';
10
10
  export * from './RDSBaseDriver';
11
11
  export * from './RedisDriver';
12
+ export * from './SQLiteDriver';
12
13
  export * from './SQLServerDriver';
@@ -12,5 +12,6 @@ tslib_1.__exportStar(require("./MySQLDriver"), exports);
12
12
  tslib_1.__exportStar(require("./PostgresDriver"), exports);
13
13
  tslib_1.__exportStar(require("./RDSBaseDriver"), exports);
14
14
  tslib_1.__exportStar(require("./RedisDriver"), exports);
15
+ tslib_1.__exportStar(require("./SQLiteDriver"), exports);
15
16
  tslib_1.__exportStar(require("./SQLServerDriver"), exports);
16
17
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/drivers/index.ts"],"names":[],"mappings":";;;AAAA,wDAA8B;AAC9B,sDAA4B;AAC5B,sDAA4B;AAC5B,uDAA6B;AAC7B,6DAAmC;AACnC,oDAA0B;AAC1B,2DAAiC;AACjC,wDAA8B;AAC9B,2DAAiC;AACjC,0DAAgC;AAChC,wDAA8B;AAC9B,4DAAkC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/drivers/index.ts"],"names":[],"mappings":";;;AAAA,wDAA8B;AAC9B,sDAA4B;AAC5B,sDAA4B;AAC5B,uDAA6B;AAC7B,6DAAmC;AACnC,oDAA0B;AAC1B,2DAAiC;AACjC,wDAA8B;AAC9B,2DAAiC;AACjC,0DAAgC;AAChC,wDAA8B;AAC9B,yDAA+B;AAC/B,4DAAkC"}
@@ -65,9 +65,6 @@ const toInsertStatement = ({ schemaName, tableName, tableComment, columns, value
65
65
  columnNames.push(`${wrapQuote(key, quote)}`);
66
66
  if (specifyValuesWithBindParameters) {
67
67
  const value = toBindValue(colType, values[key]);
68
- if (value === null) {
69
- return;
70
- }
71
68
  binds.push(value);
72
69
  placeHolders.push(toPositionedParameter === true ? `${pChar}${index + 1}` : '?');
73
70
  index++;
@@ -335,6 +332,7 @@ const toSafeQueryForPgsqlAst = (query) => {
335
332
  replacedSql = replacedSql.replace(/\bDATETIME/gi, 'TIMESTAMP');
336
333
  replacedSql = replacedSql.replace(/\bAUTOINCREMENT/gi, '');
337
334
  replacedSql = replacedSql.replace(/\b(authorization)/i, '$1_1');
335
+ replacedSql = replacedSql.replace(/^[ \r\n]+/, '');
338
336
  return replacedSql.replace(FUNCTION_MATCHER, '1');
339
337
  };
340
338
  exports.toSafeQueryForPgsqlAst = toSafeQueryForPgsqlAst;
@@ -350,17 +348,54 @@ const hasSetVariableClause = (sql) => {
350
348
  exports.hasSetVariableClause = hasSetVariableClause;
351
349
  const parseQuery = (sql) => {
352
350
  const replacedSql = (0, exports.toSafeQueryForPgsqlAst)(sql);
351
+ if (replacedSql.toLocaleLowerCase().startsWith('pragma')) {
352
+ return {
353
+ ast: {
354
+ type: 'pragma',
355
+ },
356
+ names: undefined,
357
+ };
358
+ }
353
359
  try {
354
360
  const result = (0, pgsql_ast_parser_1.parse)(replacedSql, { locationTracking: true });
355
361
  if (result && result.length) {
362
+ let ast = result[0];
363
+ if (ast.type === 'with recursive' || ast.type === 'with') {
364
+ ast = ast.in;
365
+ }
356
366
  const names = getQNames(result[0], replacedSql);
357
367
  return {
358
- ast: result[0],
368
+ ast,
359
369
  names,
360
370
  };
361
371
  }
362
372
  }
363
373
  catch (_) {
374
+ const getAstType = () => {
375
+ const rsql = replacedSql.toLocaleLowerCase();
376
+ if (rsql.match(/select\\s+/)) {
377
+ return 'select';
378
+ }
379
+ else if (rsql.match(/insert\\s+into/)) {
380
+ return 'insert';
381
+ }
382
+ else if (rsql.match(/update\\s+/)) {
383
+ return 'update';
384
+ }
385
+ else if (rsql.match(/delete\\s+/)) {
386
+ return 'delete';
387
+ }
388
+ return null;
389
+ };
390
+ const astType = getAstType();
391
+ if (!astType) {
392
+ return {
393
+ ast: {
394
+ type: astType,
395
+ },
396
+ names: undefined,
397
+ };
398
+ }
364
399
  console.log('sql=', sql);
365
400
  console.log('replacedSql=', replacedSql);
366
401
  console.error(_);
@@ -1 +1 @@
1
- {"version":3,"file":"SQLHelper.js","sourceRoot":"","sources":["../../../src/helpers/SQLHelper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SQLHelper.js","sourceRoot":"","sources":["../../../src/helpers/SQLHelper.ts"],"names":[],"mappings":"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"}
@@ -33,6 +33,7 @@ const parseCsvFromReadable = (readable, options) => tslib_1.__awaiter(void 0, vo
33
33
  }
34
34
  if (options.cast) {
35
35
  rdb.resetKeyTypeByRows();
36
+ rdb.normalizeValuesByTypes();
36
37
  }
37
38
  return rdb;
38
39
  });
@@ -1 +1 @@
1
- {"version":3,"file":"csv.js","sourceRoot":"","sources":["../../../src/utils/csv.ts"],"names":[],"mappings":";;;;AAAA,0CAAsE;AACtE,yCAA2C;AAC3C,+CAAyB;AACzB,mCAAkC;AAClC,8CAA2C;AA+CpC,MAAM,gBAAgB,GAAG,CAC9B,QAAgB,EAChB,OAAiB,EACc,EAAE;IACjC,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAEjC,OAAO,oBAAoB,CAAC,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC;AACtE,CAAC,CAAA,CAAC;AAPW,QAAA,gBAAgB,oBAO3B;AAEK,MAAM,kBAAkB,GAAG,CAChC,SAAiB,EACjB,OAAiB,EACc,EAAE;IACjC,OAAO,oBAAoB,CAAC,iBAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,CAAC;AACjE,CAAC,CAAA,CAAC;AALW,QAAA,kBAAkB,sBAK7B;AAEF,MAAM,oBAAoB,GAAG,CAC3B,QAAkB,EAClB,OAAiB,EACc,EAAE;IACjC,IAAI,GAAG,GAAqC,SAAS,CAAC;IAEtD,MAAM,MAAM,GAAG,QAAQ;SACpB,IAAI,CACH,IAAA,iBAAK,kBACH,cAAc,EAAE,IAAI,EACpB,oBAAoB,EAAE,IAAI,IACvB,OAAO,EACV,CACH;SACA,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;QACnB,IAAI,GAAG,KAAK,SAAS,EAAE;YACrB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAA,kBAAY,EAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;YACvE,GAAG,GAAG,IAAI,0BAAoB,CAAC,IAAI,CAAC,CAAC;SACtC;QACD,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC,CAAC,CAAC;IAEL,MAAM,IAAA,mBAAQ,EAAC,MAAM,CAAC,CAAC;IAEvB,IAAI,GAAG,KAAK,SAAS,EAAE;QACrB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;KAClC;IAED,IAAI,OAAO,CAAC,IAAI,EAAE;QAChB,GAAG,CAAC,kBAAkB,EAAE,CAAC;KAC1B;IAED,OAAO,GAAG,CAAC;AACb,CAAC,CAAA,CAAC"}
1
+ {"version":3,"file":"csv.js","sourceRoot":"","sources":["../../../src/utils/csv.ts"],"names":[],"mappings":";;;;AAAA,0CAAsE;AACtE,yCAA2C;AAC3C,+CAAyB;AACzB,mCAAkC;AAClC,8CAA2C;AA+CpC,MAAM,gBAAgB,GAAG,CAC9B,QAAgB,EAChB,OAAiB,EACc,EAAE;IACjC,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAEjC,OAAO,oBAAoB,CAAC,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC;AACtE,CAAC,CAAA,CAAC;AAPW,QAAA,gBAAgB,oBAO3B;AAEK,MAAM,kBAAkB,GAAG,CAChC,SAAiB,EACjB,OAAiB,EACc,EAAE;IACjC,OAAO,oBAAoB,CAAC,iBAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,CAAC;AACjE,CAAC,CAAA,CAAC;AALW,QAAA,kBAAkB,sBAK7B;AAEF,MAAM,oBAAoB,GAAG,CAC3B,QAAkB,EAClB,OAAiB,EACc,EAAE;IACjC,IAAI,GAAG,GAAqC,SAAS,CAAC;IAEtD,MAAM,MAAM,GAAG,QAAQ;SACpB,IAAI,CACH,IAAA,iBAAK,kBACH,cAAc,EAAE,IAAI,EACpB,oBAAoB,EAAE,IAAI,IACvB,OAAO,EACV,CACH;SACA,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;QACnB,IAAI,GAAG,KAAK,SAAS,EAAE;YACrB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAA,kBAAY,EAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;YACvE,GAAG,GAAG,IAAI,0BAAoB,CAAC,IAAI,CAAC,CAAC;SACtC;QACD,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC,CAAC,CAAC;IAEL,MAAM,IAAA,mBAAQ,EAAC,MAAM,CAAC,CAAC;IAEvB,IAAI,GAAG,KAAK,SAAS,EAAE;QACrB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;KAClC;IAED,IAAI,OAAO,CAAC,IAAI,EAAE;QAChB,GAAG,CAAC,kBAAkB,EAAE,CAAC;QACzB,GAAG,CAAC,sBAAsB,EAAE,CAAC;KAC9B;IAED,OAAO,GAAG,CAAC;AACb,CAAC,CAAA,CAAC"}
@@ -9,6 +9,7 @@ const isRDSType = (dbType) => {
9
9
  case types_1.DBType.MySQL:
10
10
  case types_1.DBType.Postgres:
11
11
  case types_1.DBType.SQLServer:
12
+ case types_1.DBType.SQLite:
12
13
  return true;
13
14
  }
14
15
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"dbType.js","sourceRoot":"","sources":["../../../src/utils/dbType.ts"],"names":[],"mappings":";;;AAAA,oCAAkC;AAE3B,MAAM,KAAK,GAAG,CAAC,MAAc,EAAW,EAAE,CAAC,cAAM,CAAC,GAAG,KAAK,MAAM,CAAC;AAA3D,QAAA,KAAK,SAAsD;AAEjE,MAAM,SAAS,GAAG,CAAC,MAAc,EAAW,EAAE;IACnD,QAAQ,MAAM,EAAE;QACd,KAAK,cAAM,CAAC,KAAK,CAAC;QAClB,KAAK,cAAM,CAAC,QAAQ,CAAC;QACrB,KAAK,cAAM,CAAC,SAAS;YACnB,OAAO,IAAI,CAAC;KACf;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AARW,QAAA,SAAS,aAQpB"}
1
+ {"version":3,"file":"dbType.js","sourceRoot":"","sources":["../../../src/utils/dbType.ts"],"names":[],"mappings":";;;AAAA,oCAAkC;AAE3B,MAAM,KAAK,GAAG,CAAC,MAAc,EAAW,EAAE,CAAC,cAAM,CAAC,GAAG,KAAK,MAAM,CAAC;AAA3D,QAAA,KAAK,SAAsD;AAEjE,MAAM,SAAS,GAAG,CAAC,MAAc,EAAW,EAAE;IACnD,QAAQ,MAAM,EAAE;QACd,KAAK,cAAM,CAAC,KAAK,CAAC;QAClB,KAAK,cAAM,CAAC,QAAQ,CAAC;QACrB,KAAK,cAAM,CAAC,SAAS,CAAC;QACtB,KAAK,cAAM,CAAC,MAAM;YAChB,OAAO,IAAI,CAAC;KACf;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AATW,QAAA,SAAS,aASpB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@l-v-yonsama/multi-platform-database-drivers",
3
- "version": "0.4.12",
3
+ "version": "0.5.5",
4
4
  "description": "multi-platform database drivers in TypeScript.",
5
5
  "engines": {
6
6
  "node": ">= 18"
@@ -17,6 +17,7 @@
17
17
  "@types/node": "~18",
18
18
  "@types/pg": "^8.6.6",
19
19
  "@types/pluralize": "^0.0.29",
20
+ "@types/sql.js": "^1.4.9",
20
21
  "@typescript-eslint/eslint-plugin": "~5.44",
21
22
  "@typescript-eslint/parser": "~5.44",
22
23
  "eslint": "~8.28",
@@ -57,6 +58,7 @@
57
58
  "test:driver:mysql": "npm run clean && jest __tests__/db/drivers/MySQLDriver.test.ts",
58
59
  "test:driver:mssql": "npm run clean && jest __tests__/db/drivers/SQLServerDriver.test.ts",
59
60
  "test:driver:postgres": "npm run clean && jest __tests__/db/drivers/PostgresDriver.test.ts",
61
+ "test:driver:sqlite": "npm run clean && jest __tests__/db/drivers/SQLiteDriver.test.ts",
60
62
  "test:driver:redis": "npm run clean && jest __tests__/db/drivers/RedisDriver.test.ts",
61
63
  "test:driver:auth0": "npm run clean && jest __tests__/db/drivers/Auth0Driver.test.ts",
62
64
  "test:driver:keycloak": "npm run clean && jest __tests__/db/drivers/KeycloakDriver.test.ts",
@@ -81,7 +83,7 @@
81
83
  "@aws-sdk/client-sqs": "^3.398.0",
82
84
  "@aws-sdk/credential-providers": "^3.279.0",
83
85
  "@aws-sdk/s3-request-presigner": "^3.427.0",
84
- "@l-v-yonsama/rdh": "^0.1.5",
86
+ "@l-v-yonsama/rdh": "^0.1.9",
85
87
  "auth0": "^3.7.1",
86
88
  "axios": "^1.6.0",
87
89
  "bytes": "^3.1.2",
@@ -100,7 +102,8 @@
100
102
  "pg": "^8.9.0",
101
103
  "pgsql-ast-parser": "^11.0.1",
102
104
  "pluralize": "^8.0.0",
103
- "short-unique-id": "^4.4.4"
105
+ "short-unique-id": "^4.4.4",
106
+ "sql.js": "^1.10.3"
104
107
  },
105
108
  "volta": {
106
109
  "node": "18.12.1"