mirror of
https://github.com/DeNNiiInc/dbgate.git
synced 2026-05-01 01:33:59 +00:00
fix(libSql): support useTransaction flag for scripts
This commit is contained in:
@@ -97,14 +97,21 @@ const libsqlDriver = {
|
|||||||
options.done();
|
options.done();
|
||||||
// return stream;
|
// return stream;
|
||||||
},
|
},
|
||||||
async script(dbhan, sql) {
|
async script(dbhan, sql, { useTransaction }) {
|
||||||
const inTransaction = dbhan.client.transaction(() => {
|
const runScript = () => {
|
||||||
for (const sqlItem of splitQuery(sql, this.getQuerySplitterOptions('script'))) {
|
for (const sqlItem of splitQuery(sql, this.getQuerySplitterOptions('script'))) {
|
||||||
const stmt = dbhan.client.prepare(sqlItem);
|
const stmt = dbhan.client.prepare(sqlItem);
|
||||||
stmt.run();
|
stmt.run();
|
||||||
}
|
}
|
||||||
});
|
};
|
||||||
inTransaction();
|
|
||||||
|
if (useTransaction) {
|
||||||
|
dbhan.client.transaction(() => {
|
||||||
|
runScript();
|
||||||
|
})();
|
||||||
|
} else {
|
||||||
|
runScript();
|
||||||
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
async readQueryTask(stmt, pass) {
|
async readQueryTask(stmt, pass) {
|
||||||
|
|||||||
Reference in New Issue
Block a user