diff --git a/src/dialect/mysql/mysql-driver.ts b/src/dialect/mysql/mysql-driver.ts index 80cc1d44a..83c865a73 100644 --- a/src/dialect/mysql/mysql-driver.ts +++ b/src/dialect/mysql/mysql-driver.ts @@ -74,16 +74,18 @@ export class MysqlDriver implements Driver { settings: TransactionSettings, ): Promise { if (settings.isolationLevel || settings.accessMode) { - let sql = 'set transaction' + const parts: string[] = [] if (settings.isolationLevel) { - sql += ` isolation level ${settings.isolationLevel}` + parts.push(`isolation level ${settings.isolationLevel}`) } if (settings.accessMode) { - sql += ` ${settings.accessMode}` + parts.push(settings.accessMode) } + const sql = `set transaction ${parts.join(', ')}` + // On MySQL this sets the isolation level of the next transaction. await connection.executeQuery(CompiledQuery.raw(sql)) }