supportsTransactions driver parameter

This commit is contained in:
Jan Prochazka
2024-09-11 08:16:54 +02:00
parent 293ef047d0
commit 448c15c308
6 changed files with 8 additions and 3 deletions

View File

@@ -66,20 +66,20 @@ export const driverBase = {
return new this.dumperClass(this, options);
},
async script(pool, sql, options: RunScriptOptions) {
if (options?.useTransaction) {
if (options?.useTransaction && this.supportsTransactions) {
runCommandOnDriver(pool, this, dmp => dmp.beginTransaction());
}
for (const sqlItem of splitQuery(sql, this.getQuerySplitterOptions('script'))) {
try {
await this.query(pool, sqlItem, { discardResult: true });
} catch (err) {
if (options?.useTransaction) {
if (options?.useTransaction && this.supportsTransactions) {
runCommandOnDriver(pool, this, dmp => dmp.rollbackTransaction());
}
throw err;
}
}
if (options?.useTransaction) {
if (options?.useTransaction && this.supportsTransactions) {
runCommandOnDriver(pool, this, dmp => dmp.commitTransaction());
}
},