mirror of
https://github.com/DeNNiiInc/dbgate.git
synced 2026-04-30 06:53:58 +00:00
save table structure uses transaction
This commit is contained in:
@@ -507,9 +507,7 @@ export function getAlterTableScript(
|
||||
|
||||
const plan = createAlterTablePlan(oldTable, newTable, opts, wholeOldDb, wholeNewDb, driver);
|
||||
const dmp = driver.createDumper({ useHardSeparator: true });
|
||||
if (!driver.dialect.disableExplicitTransaction) dmp.beginTransaction();
|
||||
plan.run(dmp);
|
||||
if (!driver.dialect.disableExplicitTransaction) dmp.commitTransaction();
|
||||
return {
|
||||
sql: dmp.s,
|
||||
recreates: plan.recreates,
|
||||
@@ -526,9 +524,7 @@ export function getAlterDatabaseScript(
|
||||
) {
|
||||
const plan = createAlterDatabasePlan(oldDb, newDb, opts, wholeOldDb, wholeNewDb, driver);
|
||||
const dmp = driver.createDumper({ useHardSeparator: true });
|
||||
if (!driver.dialect.disableExplicitTransaction) dmp.beginTransaction();
|
||||
plan.run(dmp);
|
||||
if (!driver.dialect.disableExplicitTransaction) dmp.commitTransaction();
|
||||
return {
|
||||
sql: dmp.s,
|
||||
recreates: plan.recreates,
|
||||
|
||||
1
packages/types/dialect.d.ts
vendored
1
packages/types/dialect.d.ts
vendored
@@ -32,7 +32,6 @@ export interface SqlDialect {
|
||||
dropCheck?: boolean;
|
||||
|
||||
dropReferencesWhenDropTable?: boolean;
|
||||
disableExplicitTransaction?: boolean;
|
||||
|
||||
predefinedDataTypes: string[];
|
||||
|
||||
|
||||
@@ -277,7 +277,7 @@
|
||||
const conid = $values?.targetConid;
|
||||
const database = $values?.targetDatabase;
|
||||
|
||||
const resp = await apiCall('database-connections/run-script', { conid, database, sql });
|
||||
const resp = await apiCall('database-connections/run-script', { conid, database, sql, useTransaction: true });
|
||||
const { errorMessage } = resp || {};
|
||||
if (errorMessage) {
|
||||
showModal(ErrorMessageModal, { title: 'Error when saving', message: errorMessage });
|
||||
|
||||
@@ -131,7 +131,7 @@
|
||||
}
|
||||
|
||||
async function handleConfirmSql(sql, createTableName) {
|
||||
const resp = await apiCall('database-connections/run-script', { conid, database, sql });
|
||||
const resp = await apiCall('database-connections/run-script', { conid, database, sql, useTransaction: true });
|
||||
const { errorMessage } = resp || {};
|
||||
if (errorMessage) {
|
||||
showModal(ErrorMessageModal, { title: 'Error when saving', message: errorMessage });
|
||||
|
||||
@@ -22,7 +22,6 @@ const dialect = {
|
||||
return `[${s}]`;
|
||||
},
|
||||
anonymousPrimaryKey: true,
|
||||
disableExplicitTransaction: true,
|
||||
|
||||
createColumn: true,
|
||||
dropColumn: true,
|
||||
|
||||
Reference in New Issue
Block a user