File tree Expand file tree Collapse file tree 1 file changed +19
-1
lines changed
packages/sqlite-builder/src Expand file tree Collapse file tree 1 file changed +19
-1
lines changed Original file line number Diff line number Diff line change @@ -239,14 +239,32 @@ export class SqliteBuilder<DB extends Record<string, any>> {
239
239
* execute raw sql,
240
240
* auto detect transaction, auto catch error
241
241
*/
242
+ public async raw < O = unknown > (
243
+ rawSql : RawBuilder < O > ,
244
+ ) : Promise < QueryResult < O | unknown > >
245
+ public async raw < O = unknown > (
246
+ rawSql : string ,
247
+ parameters ?: unknown [ ]
248
+ ) : Promise < QueryResult < O | unknown > >
242
249
public async raw < O = unknown > (
243
250
rawSql : RawBuilder < O > | string ,
251
+ parameters ?: unknown [ ] ,
244
252
) : Promise < QueryResult < O | unknown > > {
245
253
return typeof rawSql === 'string'
246
- ? await this . getDB ( ) . executeQuery ( CompiledQuery . raw ( rawSql ) )
254
+ ? await this . getDB ( ) . executeQuery ( CompiledQuery . raw ( rawSql , parameters ) )
247
255
: await rawSql . execute ( this . getDB ( ) )
248
256
}
249
257
258
+ /**
259
+ * optimize db file
260
+ * @param rebuild run `vacuum` instead of `pragma optimize`
261
+ * @see https://sqlite.org/pragma.html#pragma_optimize
262
+ * @see https://www.sqlite.org/lang_vacuum.html
263
+ */
264
+ public async optimize ( rebuild ?: boolean ) {
265
+ await this . raw ( rebuild ? 'vacuum' : 'pragma optimize' )
266
+ }
267
+
250
268
/**
251
269
* destroy db connection
252
270
*/
You can’t perform that action at this time.
0 commit comments