duckdb-tinyorm 2.0.4 → 3.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -4
- package/dist/helpers/bulk-insert.helper.d.ts +2 -1
- package/dist/helpers/bulk-insert.helper.js +9 -13
- package/dist/helpers/bulk-insert.helper.js.map +1 -1
- package/dist/helpers/db.helper.d.ts +11 -11
- package/dist/helpers/db.helper.js +109 -118
- package/dist/helpers/db.helper.js.map +1 -1
- package/dist/index.d.ts +1 -2
- package/dist/index.js +8 -9
- package/dist/index.js.map +1 -1
- package/dist/migration/migration.d.ts +2 -2
- package/dist/migration/migration.js +28 -36
- package/dist/migration/migration.js.map +1 -1
- package/dist/repositories/duckdb.repository.d.ts +10 -3
- package/dist/repositories/duckdb.repository.js +117 -19
- package/dist/repositories/duckdb.repository.js.map +1 -1
- package/dist/repositories/transaction.d.ts +2 -3
- package/dist/repositories/transaction.js +3 -15
- package/dist/repositories/transaction.js.map +1 -1
- package/dist/test.js +119 -83
- package/dist/test.js.map +1 -1
- package/package.json +3 -3
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.DuckDbRepository = exports.DuckDbLocation = void 0;
|
|
4
4
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
5
|
-
const
|
|
5
|
+
const node_api_1 = require("@duckdb/node-api");
|
|
6
6
|
const mapping_helper_1 = require("../helpers/mapping.helper");
|
|
7
7
|
const table_util_helper_1 = require("../helpers/table-util.helper");
|
|
8
8
|
const db_helper_1 = require("../helpers/db.helper");
|
|
9
|
-
const transaction_1 = require("./transaction");
|
|
9
|
+
const transaction_1 = require("./transaction");
|
|
10
10
|
const orm_errors_1 = require("../errors/orm-errors");
|
|
11
11
|
const models_interface_1 = require("./models.interface");
|
|
12
12
|
var DuckDbLocation;
|
|
@@ -15,15 +15,34 @@ var DuckDbLocation;
|
|
|
15
15
|
DuckDbLocation["Memory"] = ":memory:";
|
|
16
16
|
})(DuckDbLocation || (exports.DuckDbLocation = DuckDbLocation = {}));
|
|
17
17
|
class DuckDbRepository {
|
|
18
|
-
|
|
18
|
+
instance = undefined;
|
|
19
19
|
connection = undefined;
|
|
20
|
-
// private statement: Statement;
|
|
21
|
-
// private toDropTable: boolean = true;
|
|
22
20
|
tables = new Map();
|
|
23
21
|
isClosed = true;
|
|
24
|
-
|
|
25
|
-
|
|
22
|
+
connectionPromise = null;
|
|
23
|
+
initialized = null;
|
|
26
24
|
static instance = null;
|
|
25
|
+
static async getInstance(duckdbConfig) {
|
|
26
|
+
if (!duckdbConfig) {
|
|
27
|
+
duckdbConfig = {
|
|
28
|
+
name: 'default',
|
|
29
|
+
location: DuckDbLocation.Memory,
|
|
30
|
+
filename: undefined
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
if (duckdbConfig?.location == DuckDbLocation.File && !duckdbConfig.filename) {
|
|
34
|
+
throw new Error("Filepath for duckdb is missing");
|
|
35
|
+
}
|
|
36
|
+
const dbLocation = duckdbConfig.location == DuckDbLocation.File ? duckdbConfig.filename : DuckDbLocation.Memory.toString();
|
|
37
|
+
console.log(dbLocation);
|
|
38
|
+
if (!this.instance) {
|
|
39
|
+
this.instance = new DuckDbRepository(dbLocation, duckdbConfig.options);
|
|
40
|
+
// Wait for initialization to complete
|
|
41
|
+
await this.instance.initialized;
|
|
42
|
+
}
|
|
43
|
+
return this.instance;
|
|
44
|
+
}
|
|
45
|
+
// Legacy method to maintain backward compatibility
|
|
27
46
|
static getInstances(duckdbConfig) {
|
|
28
47
|
if (!duckdbConfig) {
|
|
29
48
|
duckdbConfig = {
|
|
@@ -38,24 +57,77 @@ class DuckDbRepository {
|
|
|
38
57
|
const dbLocation = duckdbConfig.location == DuckDbLocation.File ? duckdbConfig.filename : DuckDbLocation.Memory.toString();
|
|
39
58
|
console.log(dbLocation);
|
|
40
59
|
if (!this.instance) {
|
|
41
|
-
this.instance = new DuckDbRepository(dbLocation);
|
|
60
|
+
this.instance = new DuckDbRepository(dbLocation, duckdbConfig.options);
|
|
42
61
|
}
|
|
43
62
|
return this.instance;
|
|
44
63
|
}
|
|
45
|
-
constructor(location) {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
64
|
+
constructor(location, options) {
|
|
65
|
+
// Initialize with the provided location or default to ':memory:'
|
|
66
|
+
this.initialized = this.initSync(location ?? ':memory:', options).catch(error => {
|
|
67
|
+
console.error('Error initializing DuckDB instance:', error);
|
|
68
|
+
throw error;
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
async initSync(location, options) {
|
|
72
|
+
try {
|
|
73
|
+
// Create instance using the static create method as per DuckDB API
|
|
74
|
+
this.instance = await node_api_1.DuckDBInstance.create(location);
|
|
75
|
+
console.log(`DuckDB instance created at ${location}`);
|
|
76
|
+
// If we have options and the instance is created successfully, set them
|
|
77
|
+
if (options && this.instance) {
|
|
78
|
+
// Set options on the instance if needed
|
|
79
|
+
}
|
|
80
|
+
// Connect immediately after creating the instance
|
|
81
|
+
if (this.instance) {
|
|
82
|
+
this.connection = await this.instance.connect();
|
|
83
|
+
this.isClosed = false;
|
|
84
|
+
console.log('DuckDB connection established successfully');
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
catch (error) {
|
|
88
|
+
console.error('Error initializing DuckDB repository:', error);
|
|
89
|
+
throw error;
|
|
49
90
|
}
|
|
50
91
|
}
|
|
51
|
-
connect() {
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
this.
|
|
92
|
+
async connect() {
|
|
93
|
+
// If we're already connecting, return the existing promise
|
|
94
|
+
if (this.connectionPromise) {
|
|
95
|
+
return this.connectionPromise;
|
|
96
|
+
}
|
|
97
|
+
// If we're already connected, return immediately
|
|
98
|
+
if (!this.isClosed && this.connection) {
|
|
99
|
+
return Promise.resolve();
|
|
100
|
+
}
|
|
101
|
+
// Start a new connection process
|
|
102
|
+
this.connectionPromise = new Promise((resolve, reject) => {
|
|
103
|
+
if (this.isClosed && this.instance) {
|
|
104
|
+
this.instance.connect()
|
|
105
|
+
.then(connection => {
|
|
106
|
+
this.connection = connection;
|
|
107
|
+
this.isClosed = false;
|
|
108
|
+
resolve();
|
|
109
|
+
})
|
|
110
|
+
.catch(error => {
|
|
111
|
+
console.error('Error connecting to DuckDB:', error);
|
|
112
|
+
reject(error);
|
|
113
|
+
})
|
|
114
|
+
.finally(() => {
|
|
115
|
+
this.connectionPromise = null;
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
else {
|
|
119
|
+
resolve();
|
|
120
|
+
}
|
|
121
|
+
});
|
|
122
|
+
return this.connectionPromise;
|
|
123
|
+
}
|
|
124
|
+
async ensureConnected() {
|
|
125
|
+
if (!this.connection || this.isClosed) {
|
|
126
|
+
await this.connect();
|
|
55
127
|
}
|
|
56
128
|
}
|
|
57
|
-
// Fix the sequence creation logic
|
|
58
129
|
async createTableIfNotExists(tableName, classType) {
|
|
130
|
+
await this.ensureConnected();
|
|
59
131
|
try {
|
|
60
132
|
// Get the actual table name from metadata if available
|
|
61
133
|
const actualTableName = Reflect.getMetadata('TableName', classType) || tableName;
|
|
@@ -101,15 +173,18 @@ class DuckDbRepository {
|
|
|
101
173
|
}
|
|
102
174
|
}
|
|
103
175
|
async getDuckDbExtension(extension_name) {
|
|
176
|
+
await this.ensureConnected();
|
|
104
177
|
return this.executeQuery(`select extension_name, loaded, installed from duckdb_extensions() where extension_name='${extension_name}';`);
|
|
105
178
|
}
|
|
106
179
|
async executeQuery(query) {
|
|
107
|
-
|
|
180
|
+
await this.ensureConnected();
|
|
181
|
+
return (0, db_helper_1.executeQuery)(this.connection, query);
|
|
108
182
|
}
|
|
109
183
|
async pushToDuckDb(tableName, classType, data) {
|
|
110
184
|
await this.saveToDuckDB(tableName, classType, data);
|
|
111
185
|
}
|
|
112
186
|
async saveToDuckDB(tableName, classType, data) {
|
|
187
|
+
await this.ensureConnected();
|
|
113
188
|
if (!(data?.length))
|
|
114
189
|
return;
|
|
115
190
|
// Get the actual table name from metadata if available
|
|
@@ -123,15 +198,18 @@ class DuckDbRepository {
|
|
|
123
198
|
await (0, db_helper_1.bulkInsert)(this.connection, fullQuery);
|
|
124
199
|
}
|
|
125
200
|
async saveToParquet(name, mainFolder) {
|
|
201
|
+
await this.ensureConnected();
|
|
126
202
|
const fileName = `${name}.parquet`;
|
|
127
203
|
const tableName = `main.${name}`;
|
|
128
204
|
await (0, db_helper_1.saveToParquet)(this.connection, fileName, tableName, mainFolder);
|
|
129
205
|
}
|
|
130
206
|
async saveToParquetByName(parquetFileName, duckDBTableName, mainFolder) {
|
|
207
|
+
await this.ensureConnected();
|
|
131
208
|
const fileName = `${parquetFileName}.parquet`;
|
|
132
209
|
await (0, db_helper_1.saveToParquet)(this.connection, fileName, `main.${duckDBTableName}`, mainFolder);
|
|
133
210
|
}
|
|
134
211
|
async dropTablesFromMemory() {
|
|
212
|
+
await this.ensureConnected();
|
|
135
213
|
const promiseDropTables = [];
|
|
136
214
|
this.tables.forEach((value, key) => {
|
|
137
215
|
if (value)
|
|
@@ -142,26 +220,30 @@ class DuckDbRepository {
|
|
|
142
220
|
await Promise.all(promiseDropTables);
|
|
143
221
|
}
|
|
144
222
|
async dropTable(tableName) {
|
|
223
|
+
await this.ensureConnected();
|
|
145
224
|
await (0, db_helper_1.dropTable)(this.connection, 'main.' + tableName);
|
|
146
225
|
if (this.tables.get(tableName)) {
|
|
147
226
|
this.tables.delete(tableName);
|
|
148
227
|
}
|
|
149
228
|
}
|
|
150
229
|
async deleteTableData(tableName) {
|
|
230
|
+
await this.ensureConnected();
|
|
151
231
|
return await (0, db_helper_1.deleteTableData)(this.connection, tableName);
|
|
152
232
|
}
|
|
153
233
|
async saveQueryToParquet(name, query, folder) {
|
|
234
|
+
await this.ensureConnected();
|
|
154
235
|
const fileName = `${name}.parquet`;
|
|
155
236
|
await (0, db_helper_1.saveQueryToParquet)(this.connection, fileName, query, folder);
|
|
156
237
|
}
|
|
157
238
|
// Add this method to the DuckDbRepository class
|
|
158
239
|
createTransaction() {
|
|
159
240
|
if (!this.connection) {
|
|
160
|
-
|
|
241
|
+
throw new orm_errors_1.ConnectionError("Cannot create transaction: Connection is not established.");
|
|
161
242
|
}
|
|
162
243
|
return new transaction_1.Transaction(this.connection);
|
|
163
244
|
}
|
|
164
245
|
async exportTable(tableName, options) {
|
|
246
|
+
await this.ensureConnected();
|
|
165
247
|
if (this.connection == undefined) {
|
|
166
248
|
throw new orm_errors_1.ConnectionError("Connection is not established.");
|
|
167
249
|
}
|
|
@@ -178,6 +260,7 @@ class DuckDbRepository {
|
|
|
178
260
|
}
|
|
179
261
|
}
|
|
180
262
|
async exportQuery(query, options) {
|
|
263
|
+
await this.ensureConnected();
|
|
181
264
|
if (this.connection == undefined) {
|
|
182
265
|
throw new orm_errors_1.ConnectionError("Connection is not established.");
|
|
183
266
|
}
|
|
@@ -193,6 +276,7 @@ class DuckDbRepository {
|
|
|
193
276
|
}
|
|
194
277
|
}
|
|
195
278
|
async dropSequence(sequenceName) {
|
|
279
|
+
await this.ensureConnected();
|
|
196
280
|
try {
|
|
197
281
|
const query = `DROP SEQUENCE IF EXISTS ${sequenceName}`;
|
|
198
282
|
await this.executeQuery(query);
|
|
@@ -204,6 +288,7 @@ class DuckDbRepository {
|
|
|
204
288
|
}
|
|
205
289
|
}
|
|
206
290
|
async sequenceExists(sequenceName) {
|
|
291
|
+
await this.ensureConnected();
|
|
207
292
|
try {
|
|
208
293
|
const query = `SELECT sequence_name FROM information_schema.sequences WHERE sequence_name = '${sequenceName}'`;
|
|
209
294
|
const result = await this.executeQuery(query);
|
|
@@ -216,6 +301,7 @@ class DuckDbRepository {
|
|
|
216
301
|
}
|
|
217
302
|
// Method to create a secret in DuckDB
|
|
218
303
|
async createSecret(secret) {
|
|
304
|
+
await this.ensureConnected();
|
|
219
305
|
let query = '';
|
|
220
306
|
switch (secret.type) {
|
|
221
307
|
case models_interface_1.SecretType.S3:
|
|
@@ -238,6 +324,7 @@ class DuckDbRepository {
|
|
|
238
324
|
}
|
|
239
325
|
// Method to drop a secret
|
|
240
326
|
async dropSecret(secretName) {
|
|
327
|
+
await this.ensureConnected();
|
|
241
328
|
const query = `DROP SECRET IF EXISTS ${secretName}`;
|
|
242
329
|
try {
|
|
243
330
|
await this.executeQuery(query);
|
|
@@ -250,6 +337,7 @@ class DuckDbRepository {
|
|
|
250
337
|
}
|
|
251
338
|
// Method to replace (update) a secret
|
|
252
339
|
async replaceSecret(secret) {
|
|
340
|
+
await this.ensureConnected();
|
|
253
341
|
// Drop the existing secret first if it exists
|
|
254
342
|
await this.dropSecret(secret.name);
|
|
255
343
|
// Create the new secret
|
|
@@ -257,6 +345,7 @@ class DuckDbRepository {
|
|
|
257
345
|
}
|
|
258
346
|
// Method to list all secrets
|
|
259
347
|
async listSecrets() {
|
|
348
|
+
await this.ensureConnected();
|
|
260
349
|
const query = `SELECT * FROM duckdb_secrets()`;
|
|
261
350
|
return this.executeQuery(query);
|
|
262
351
|
}
|
|
@@ -291,10 +380,19 @@ class DuckDbRepository {
|
|
|
291
380
|
}
|
|
292
381
|
// Method to check if a secret exists
|
|
293
382
|
async secretExists(secretName) {
|
|
383
|
+
await this.ensureConnected();
|
|
294
384
|
const query = `SELECT name FROM duckdb_secrets() WHERE name = '${secretName}'`;
|
|
295
385
|
const result = await this.executeQuery(query);
|
|
296
386
|
return result && result.length > 0;
|
|
297
387
|
}
|
|
388
|
+
// Close connection explicitly
|
|
389
|
+
async close() {
|
|
390
|
+
if (this.connection && !this.isClosed) {
|
|
391
|
+
this.connection.disconnectSync();
|
|
392
|
+
this.isClosed = true;
|
|
393
|
+
this.connection = undefined;
|
|
394
|
+
}
|
|
395
|
+
}
|
|
298
396
|
}
|
|
299
397
|
exports.DuckDbRepository = DuckDbRepository;
|
|
300
398
|
//# sourceMappingURL=duckdb.repository.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"duckdb.repository.js","sourceRoot":"","sources":["../../src/repositories/duckdb.repository.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"duckdb.repository.js","sourceRoot":"","sources":["../../src/repositories/duckdb.repository.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { DuckDBConnection } from '@duckdb/node-api';
|
|
2
2
|
export declare class Transaction {
|
|
3
3
|
private connection;
|
|
4
|
-
constructor(connection:
|
|
4
|
+
constructor(connection: DuckDBConnection);
|
|
5
5
|
begin(): Promise<void>;
|
|
6
6
|
commit(): Promise<void>;
|
|
7
7
|
rollback(): Promise<void>;
|
|
8
|
-
private execute;
|
|
9
8
|
}
|
|
@@ -9,7 +9,7 @@ class Transaction {
|
|
|
9
9
|
}
|
|
10
10
|
async begin() {
|
|
11
11
|
try {
|
|
12
|
-
await this.
|
|
12
|
+
await this.connection.run('BEGIN TRANSACTION');
|
|
13
13
|
}
|
|
14
14
|
catch (error) {
|
|
15
15
|
throw new orm_errors_1.TransactionError('begin', error);
|
|
@@ -17,7 +17,7 @@ class Transaction {
|
|
|
17
17
|
}
|
|
18
18
|
async commit() {
|
|
19
19
|
try {
|
|
20
|
-
await this.
|
|
20
|
+
await this.connection.run('COMMIT');
|
|
21
21
|
}
|
|
22
22
|
catch (error) {
|
|
23
23
|
throw new orm_errors_1.TransactionError('commit', error);
|
|
@@ -25,24 +25,12 @@ class Transaction {
|
|
|
25
25
|
}
|
|
26
26
|
async rollback() {
|
|
27
27
|
try {
|
|
28
|
-
await this.
|
|
28
|
+
await this.connection.run('ROLLBACK');
|
|
29
29
|
}
|
|
30
30
|
catch (error) {
|
|
31
31
|
throw new orm_errors_1.TransactionError('rollback', error);
|
|
32
32
|
}
|
|
33
33
|
}
|
|
34
|
-
execute(query) {
|
|
35
|
-
return new Promise((resolve, reject) => {
|
|
36
|
-
this.connection.run(query, (err) => {
|
|
37
|
-
if (err) {
|
|
38
|
-
reject(err);
|
|
39
|
-
}
|
|
40
|
-
else {
|
|
41
|
-
resolve();
|
|
42
|
-
}
|
|
43
|
-
});
|
|
44
|
-
});
|
|
45
|
-
}
|
|
46
34
|
}
|
|
47
35
|
exports.Transaction = Transaction;
|
|
48
36
|
//# sourceMappingURL=transaction.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../src/repositories/transaction.ts"],"names":[],"mappings":";;;AACA,qDAAwD;AAExD,MAAa,WAAW;IACA;IAApB,YAAoB,
|
|
1
|
+
{"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../src/repositories/transaction.ts"],"names":[],"mappings":";;;AACA,qDAAwD;AAExD,MAAa,WAAW;IACA;IAApB,YAAoB,UAA4B;QAA5B,eAAU,GAAV,UAAU,CAAkB;IAAI,CAAC;IAErD,KAAK,CAAC,KAAK;QACP,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;QACnD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,IAAI,6BAAgB,CAAC,OAAO,EAAE,KAAc,CAAC,CAAC;QACxD,CAAC;IACL,CAAC;IAED,KAAK,CAAC,MAAM;QACR,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACxC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,IAAI,6BAAgB,CAAC,QAAQ,EAAE,KAAc,CAAC,CAAC;QACzD,CAAC;IACL,CAAC;IAED,KAAK,CAAC,QAAQ;QACV,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC1C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,IAAI,6BAAgB,CAAC,UAAU,EAAE,KAAc,CAAC,CAAC;QAC3D,CAAC;IACL,CAAC;CACJ;AA1BD,kCA0BC"}
|
package/dist/test.js
CHANGED
|
@@ -10,14 +10,11 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.Subject = void 0;
|
|
13
|
-
|
|
13
|
+
// import { BaseRepository, Column, DuckDbLocation, DuckDbRepository, Entity, Repository, Transaction } from 'duckdb-tinyorm';
|
|
14
14
|
require("reflect-metadata");
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
location: duckdb_tinyorm_1.DuckDbLocation.Memory,
|
|
19
|
-
filename: undefined
|
|
20
|
-
});
|
|
15
|
+
const duckdb_tinyorm_1 = require("duckdb-tinyorm");
|
|
16
|
+
// Use the async getInstance method instead of getInstances
|
|
17
|
+
let duckDbRepository;
|
|
21
18
|
let Subject = class Subject {
|
|
22
19
|
Id;
|
|
23
20
|
Code;
|
|
@@ -74,8 +71,8 @@ exports.Subject = Subject = __decorate([
|
|
|
74
71
|
__metadata("design:paramtypes", [String, String, String, Number])
|
|
75
72
|
], Subject);
|
|
76
73
|
let SubjectRepository = class SubjectRepository extends duckdb_tinyorm_1.BaseRepository {
|
|
77
|
-
constructor() {
|
|
78
|
-
super(
|
|
74
|
+
constructor(repo) {
|
|
75
|
+
super(repo);
|
|
79
76
|
}
|
|
80
77
|
// Add a custom method to find by code
|
|
81
78
|
async findByCode(code) {
|
|
@@ -97,81 +94,120 @@ let SubjectRepository = class SubjectRepository extends duckdb_tinyorm_1.BaseRep
|
|
|
97
94
|
};
|
|
98
95
|
SubjectRepository = __decorate([
|
|
99
96
|
(0, duckdb_tinyorm_1.Repository)(Subject),
|
|
100
|
-
__metadata("design:paramtypes", [])
|
|
97
|
+
__metadata("design:paramtypes", [duckdb_tinyorm_1.DuckDbRepository])
|
|
101
98
|
], SubjectRepository);
|
|
102
|
-
// Modify the test function to
|
|
99
|
+
// Modify the test function to initialize the connection properly
|
|
103
100
|
async function test() {
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
.
|
|
133
|
-
.
|
|
134
|
-
|
|
135
|
-
.
|
|
136
|
-
.
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
101
|
+
try {
|
|
102
|
+
// Initialize the repository asynchronously
|
|
103
|
+
duckDbRepository = await duckdb_tinyorm_1.DuckDbRepository.getInstance({
|
|
104
|
+
name: 'default',
|
|
105
|
+
location: duckdb_tinyorm_1.DuckDbLocation.Memory,
|
|
106
|
+
filename: undefined
|
|
107
|
+
});
|
|
108
|
+
console.log("DuckDb repository initialized successfully");
|
|
109
|
+
const subjectRepository = new SubjectRepository(duckDbRepository);
|
|
110
|
+
await subjectRepository.init();
|
|
111
|
+
// Save entities
|
|
112
|
+
const subject1 = new Subject('JB', "Java Basic", "Java Basic", 2024);
|
|
113
|
+
const subject2 = new Subject('OOP', "Java OOP", "Java Object Oriented Programming", 2024);
|
|
114
|
+
// Save and log the returned entities with their IDs
|
|
115
|
+
console.log("Saving subjects...");
|
|
116
|
+
console.log("Subject 1:", subject1);
|
|
117
|
+
const savedSubject1 = await subjectRepository.save(subject1);
|
|
118
|
+
console.log("Saved subject 1 with ID:", savedSubject1.Id);
|
|
119
|
+
console.log("Subject 2:", subject2);
|
|
120
|
+
const savedSubject2 = await subjectRepository.save(subject2);
|
|
121
|
+
console.log("Saved subject 2 with ID:", savedSubject2.Id);
|
|
122
|
+
// Rest of your test...
|
|
123
|
+
// Find all records
|
|
124
|
+
console.log("Finding all subjects...");
|
|
125
|
+
const result = await subjectRepository.findAll();
|
|
126
|
+
console.table(result);
|
|
127
|
+
// Find by Code using custom method
|
|
128
|
+
console.log("Finding subject by code 'JB'...");
|
|
129
|
+
const subjectFound = await subjectRepository.findByCode("JB");
|
|
130
|
+
console.info(subjectFound);
|
|
131
|
+
// Delete by Code using custom method
|
|
132
|
+
console.log("Deleting subject by code 'JB'...");
|
|
133
|
+
await subjectRepository.removeByCode("JB");
|
|
134
|
+
// Find with criteria
|
|
135
|
+
console.log("Finding subjects with criteria (Year = 2024)...");
|
|
136
|
+
const subjects = await subjectRepository.findBy({ Year: 2024 }, ["Year"]);
|
|
137
|
+
console.table(subjects);
|
|
138
|
+
// Use pagination
|
|
139
|
+
console.log("Finding subjects with pagination (page 0, size 1)...");
|
|
140
|
+
const page = await subjectRepository.findWithPagination({ page: 0, size: 1 });
|
|
141
|
+
console.log(`Found ${page.totalElements} subjects across ${page.totalPages} pages`);
|
|
142
|
+
console.table(page.content);
|
|
143
|
+
console.log("Finding subjects with pagination (page 1, size 1)...");
|
|
144
|
+
const page1 = await subjectRepository.findWithPagination({ page: 1, size: 1 });
|
|
145
|
+
console.log(`Found ${page.totalElements} subjects across ${page1.totalPages} pages`);
|
|
146
|
+
console.table(page1.content);
|
|
147
|
+
// Use query builder
|
|
148
|
+
console.log("Using query builder to find subjects (Year = 2024, limit 5)...");
|
|
149
|
+
const queryBuilder = await subjectRepository.createQueryBuilder();
|
|
150
|
+
const customQuery = queryBuilder
|
|
151
|
+
.select(['Id', 'Name'])
|
|
152
|
+
.where('Year = 2024')
|
|
153
|
+
.orderBy('Name', 'ASC')
|
|
154
|
+
.limit(5)
|
|
155
|
+
.getQuery();
|
|
156
|
+
const customResults = await duckDbRepository.executeQuery(customQuery);
|
|
157
|
+
console.table(customResults);
|
|
158
|
+
// Use transactions
|
|
159
|
+
console.log("Using transaction to save a new subject...");
|
|
160
|
+
await subjectRepository.withTransaction(async (transaction) => {
|
|
161
|
+
const newSubject = new Subject('DB', 'Database', 'Database course', 2024);
|
|
162
|
+
await subjectRepository.save(newSubject);
|
|
163
|
+
// If any operation throws an error, the transaction will be rolled back
|
|
164
|
+
if (newSubject.Code !== 'DB') {
|
|
165
|
+
throw new Error('Something went wrong');
|
|
166
|
+
}
|
|
167
|
+
// If we get here, the transaction will be committed
|
|
168
|
+
});
|
|
169
|
+
// Example usage in test.ts or another file
|
|
170
|
+
// Export a table to CSV
|
|
171
|
+
console.log("Exporting subjects to CSV...");
|
|
172
|
+
await subjectRepository.exportData({
|
|
173
|
+
format: 'csv',
|
|
174
|
+
fileName: 'subjects.csv',
|
|
175
|
+
csvOptions: {
|
|
176
|
+
header: true,
|
|
177
|
+
delimiter: ','
|
|
178
|
+
}
|
|
179
|
+
});
|
|
180
|
+
// Export query results to JSON
|
|
181
|
+
console.log("Exporting subjects with Year = 2024 to JSON...");
|
|
182
|
+
const query = `SELECT * FROM main.subjects WHERE Year = 2024`;
|
|
183
|
+
await subjectRepository.exportQuery(query, {
|
|
184
|
+
format: 'json',
|
|
185
|
+
fileName: 'subjects-2024.json',
|
|
186
|
+
jsonOptions: {
|
|
187
|
+
pretty: true
|
|
188
|
+
}
|
|
189
|
+
});
|
|
190
|
+
// Export all data to Parquet using DuckDbRepository directly
|
|
191
|
+
console.log("Exporting all subjects to Parquet...");
|
|
192
|
+
await duckDbRepository.exportTable('subjects', {
|
|
193
|
+
format: 'parquet',
|
|
194
|
+
fileName: 'subjects.parquet',
|
|
195
|
+
parquetOptions: {
|
|
196
|
+
compression: 'ZSTD'
|
|
197
|
+
}
|
|
198
|
+
});
|
|
199
|
+
}
|
|
200
|
+
catch (error) {
|
|
201
|
+
console.error("Error during test execution:", error);
|
|
202
|
+
}
|
|
176
203
|
}
|
|
204
|
+
// Use an IIFE to allow top-level await
|
|
205
|
+
(async () => {
|
|
206
|
+
try {
|
|
207
|
+
await test();
|
|
208
|
+
}
|
|
209
|
+
catch (error) {
|
|
210
|
+
console.error("Fatal error:", error);
|
|
211
|
+
}
|
|
212
|
+
})();
|
|
177
213
|
//# sourceMappingURL=test.js.map
|