rake-db 2.15.8 → 2.15.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +44 -14
- package/dist/index.js +58 -37
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +58 -37
- package/dist/index.mjs.map +1 -1
- package/package.json +3 -3
package/dist/index.d.ts
CHANGED
|
@@ -101,9 +101,12 @@ type DbMigration<CT extends RakeDbColumnTypes> = DbResult<CT> & Migration<CT> &
|
|
|
101
101
|
* @param config - config of `rakeDb`
|
|
102
102
|
* @param asts - array of migration ASTs to collect changes into
|
|
103
103
|
*/
|
|
104
|
-
declare const createMigrationInterface: <SchemaConfig extends ColumnSchemaConfig<orchid_core.ColumnTypeBase<orchid_core.ColumnTypeSchemaArg, unknown, any, orchid_core.
|
|
104
|
+
declare const createMigrationInterface: <SchemaConfig extends ColumnSchemaConfig<orchid_core.ColumnTypeBase<orchid_core.ColumnTypeSchemaArg, unknown, any, orchid_core.CoreBaseOperators, unknown, unknown, any, unknown, any, orchid_core.ColumnDataBase>>, CT extends RakeDbColumnTypes>(tx: TransactionAdapter, up: boolean, config: RakeDbConfig<SchemaConfig, CT>, asts: RakeDbAst[]) => DbMigration<CT>;
|
|
105
|
+
interface MigrationAdapter extends TransactionAdapter {
|
|
106
|
+
schema: string;
|
|
107
|
+
}
|
|
105
108
|
declare class Migration<CT extends RakeDbColumnTypes> {
|
|
106
|
-
adapter:
|
|
109
|
+
adapter: MigrationAdapter;
|
|
107
110
|
log?: QueryLogObject;
|
|
108
111
|
up: boolean;
|
|
109
112
|
options: RakeDbConfig<ColumnSchemaConfig>;
|
|
@@ -253,10 +256,36 @@ declare class Migration<CT extends RakeDbColumnTypes> {
|
|
|
253
256
|
* });
|
|
254
257
|
* ```
|
|
255
258
|
*
|
|
259
|
+
* Prefix table name with a schema to set a different schema:
|
|
260
|
+
*
|
|
261
|
+
* ```ts
|
|
262
|
+
* import { change } from '../dbScript';
|
|
263
|
+
*
|
|
264
|
+
* change(async (db) => {
|
|
265
|
+
* await db.renameTable('fromSchema.oldTable', 'toSchema.newTable');
|
|
266
|
+
* });
|
|
267
|
+
* ```
|
|
268
|
+
*
|
|
256
269
|
* @param from - rename the table from
|
|
257
270
|
* @param to - rename the table to
|
|
258
271
|
*/
|
|
259
272
|
renameTable(from: string, to: string): Promise<void>;
|
|
273
|
+
/**
|
|
274
|
+
* Set a different schema to the table:
|
|
275
|
+
*
|
|
276
|
+
* ```ts
|
|
277
|
+
* import { change } from '../dbScript';
|
|
278
|
+
*
|
|
279
|
+
* change(async (db) => {
|
|
280
|
+
* await db.changeTableSchema('tableName', 'fromSchema', 'toSchema');
|
|
281
|
+
* });
|
|
282
|
+
* ```
|
|
283
|
+
*
|
|
284
|
+
* @param table - table name
|
|
285
|
+
* @param from - current table schema
|
|
286
|
+
* @param to - desired table schema
|
|
287
|
+
*/
|
|
288
|
+
changeTableSchema(table: string, from: string, to: string): Promise<void>;
|
|
260
289
|
/**
|
|
261
290
|
* Add a column to the table on migrating, and remove it on rollback.
|
|
262
291
|
*
|
|
@@ -1050,15 +1079,15 @@ declare const migrationConfigDefaults: {
|
|
|
1050
1079
|
logger: Console;
|
|
1051
1080
|
useCodeUpdater: true;
|
|
1052
1081
|
};
|
|
1053
|
-
declare const processRakeDbConfig: <SchemaConfig extends ColumnSchemaConfig<orchid_core.ColumnTypeBase<orchid_core.ColumnTypeSchemaArg, unknown, any, orchid_core.
|
|
1082
|
+
declare const processRakeDbConfig: <SchemaConfig extends ColumnSchemaConfig<orchid_core.ColumnTypeBase<orchid_core.ColumnTypeSchemaArg, unknown, any, orchid_core.CoreBaseOperators, unknown, unknown, any, unknown, any, orchid_core.ColumnDataBase>>, CT>(config: InputRakeDbConfig<SchemaConfig, CT>) => RakeDbConfig<SchemaConfig, CT>;
|
|
1054
1083
|
declare const getDatabaseAndUserFromOptions: (options: AdapterOptions) => {
|
|
1055
1084
|
database: string;
|
|
1056
1085
|
user: string;
|
|
1057
1086
|
};
|
|
1058
1087
|
|
|
1059
|
-
declare const createDb: <SchemaConfig extends ColumnSchemaConfig<orchid_core.ColumnTypeBase<orchid_core.ColumnTypeSchemaArg, unknown, any, orchid_core.
|
|
1060
|
-
declare const dropDb: <SchemaConfig extends ColumnSchemaConfig<orchid_core.ColumnTypeBase<orchid_core.ColumnTypeSchemaArg, unknown, any, orchid_core.
|
|
1061
|
-
declare const resetDb: <SchemaConfig extends ColumnSchemaConfig<orchid_core.ColumnTypeBase<orchid_core.ColumnTypeSchemaArg, unknown, any, orchid_core.
|
|
1088
|
+
declare const createDb: <SchemaConfig extends ColumnSchemaConfig<orchid_core.ColumnTypeBase<orchid_core.ColumnTypeSchemaArg, unknown, any, orchid_core.CoreBaseOperators, unknown, unknown, any, unknown, any, orchid_core.ColumnDataBase>>, CT>(arg: MaybeArray<AdapterOptions>, config: RakeDbConfig<SchemaConfig, CT>) => Promise<void>;
|
|
1089
|
+
declare const dropDb: <SchemaConfig extends ColumnSchemaConfig<orchid_core.ColumnTypeBase<orchid_core.ColumnTypeSchemaArg, unknown, any, orchid_core.CoreBaseOperators, unknown, unknown, any, unknown, any, orchid_core.ColumnDataBase>>, CT>(arg: MaybeArray<AdapterOptions>, config: RakeDbConfig<SchemaConfig, CT>) => Promise<void>;
|
|
1090
|
+
declare const resetDb: <SchemaConfig extends ColumnSchemaConfig<orchid_core.ColumnTypeBase<orchid_core.ColumnTypeSchemaArg, unknown, any, orchid_core.CoreBaseOperators, unknown, unknown, any, unknown, any, orchid_core.ColumnDataBase>>, CT extends RakeDbColumnTypes>(arg: MaybeArray<AdapterOptions>, config: RakeDbConfig<SchemaConfig, CT>) => Promise<void>;
|
|
1062
1091
|
|
|
1063
1092
|
interface MigrationItem {
|
|
1064
1093
|
path: string;
|
|
@@ -1079,22 +1108,22 @@ interface RakeDbCtx {
|
|
|
1079
1108
|
migrationsPromise?: Promise<MigrationsSet>;
|
|
1080
1109
|
}
|
|
1081
1110
|
|
|
1082
|
-
declare const writeMigrationFile: <SchemaConfig extends ColumnSchemaConfig<orchid_core.ColumnTypeBase<orchid_core.ColumnTypeSchemaArg, unknown, any, orchid_core.
|
|
1111
|
+
declare const writeMigrationFile: <SchemaConfig extends ColumnSchemaConfig<orchid_core.ColumnTypeBase<orchid_core.ColumnTypeSchemaArg, unknown, any, orchid_core.CoreBaseOperators, unknown, unknown, any, unknown, any, orchid_core.ColumnDataBase>>, CT>(config: RakeDbConfig<SchemaConfig, CT>, version: string, name: string, content: (importPath: string, name: string) => string) => Promise<void>;
|
|
1083
1112
|
declare const generate: (config: AnyRakeDbConfig, [name]: string[]) => Promise<void>;
|
|
1084
1113
|
declare const makeFileVersion: (ctx: RakeDbCtx, config: AnyRakeDbConfig) => Promise<string>;
|
|
1085
1114
|
declare const generateTimeStamp: () => string;
|
|
1086
1115
|
|
|
1087
1116
|
type ChangeCallback<CT extends RakeDbColumnTypes> = (db: DbMigration<CT>, up: boolean) => Promise<void>;
|
|
1088
1117
|
|
|
1089
|
-
declare const saveMigratedVersion: <SchemaConfig extends ColumnSchemaConfig<orchid_core.ColumnTypeBase<orchid_core.ColumnTypeSchemaArg, unknown, any, orchid_core.
|
|
1090
|
-
declare const deleteMigratedVersion: <SchemaConfig extends ColumnSchemaConfig<orchid_core.ColumnTypeBase<orchid_core.ColumnTypeSchemaArg, unknown, any, orchid_core.
|
|
1118
|
+
declare const saveMigratedVersion: <SchemaConfig extends ColumnSchemaConfig<orchid_core.ColumnTypeBase<orchid_core.ColumnTypeSchemaArg, unknown, any, orchid_core.CoreBaseOperators, unknown, unknown, any, unknown, any, orchid_core.ColumnDataBase>>, CT>(db: SilentQueries, version: string, name: string, config: RakeDbConfig<SchemaConfig, CT>) => Promise<void>;
|
|
1119
|
+
declare const deleteMigratedVersion: <SchemaConfig extends ColumnSchemaConfig<orchid_core.ColumnTypeBase<orchid_core.ColumnTypeSchemaArg, unknown, any, orchid_core.CoreBaseOperators, unknown, unknown, any, unknown, any, orchid_core.ColumnDataBase>>, CT>(db: SilentQueries, version: string, name: string, config: RakeDbConfig<SchemaConfig, CT>) => Promise<void>;
|
|
1091
1120
|
declare class NoMigrationsTableError extends Error {
|
|
1092
1121
|
}
|
|
1093
1122
|
type RakeDbAppliedVersions = {
|
|
1094
1123
|
map: RecordOptionalString;
|
|
1095
1124
|
sequence: number[];
|
|
1096
1125
|
};
|
|
1097
|
-
declare const getMigratedVersionsMap: <SchemaConfig extends ColumnSchemaConfig<orchid_core.ColumnTypeBase<orchid_core.ColumnTypeSchemaArg, unknown, any, orchid_core.
|
|
1126
|
+
declare const getMigratedVersionsMap: <SchemaConfig extends ColumnSchemaConfig<orchid_core.ColumnTypeBase<orchid_core.ColumnTypeSchemaArg, unknown, any, orchid_core.CoreBaseOperators, unknown, unknown, any, unknown, any, orchid_core.ColumnDataBase>>, CT>(ctx: RakeDbCtx, adapter: Adapter | TransactionAdapter, config: RakeDbConfig<SchemaConfig, CT>, renameTo?: RakeDbMigrationId) => Promise<RakeDbAppliedVersions>;
|
|
1098
1127
|
|
|
1099
1128
|
declare const RAKE_DB_LOCK_KEY = "8582141715823621641";
|
|
1100
1129
|
type MigrateFn = <SchemaConfig extends ColumnSchemaConfig, CT extends RakeDbColumnTypes>(ctx: RakeDbCtx, options: MaybeArray<AdapterOptions>, config: RakeDbConfig<SchemaConfig, CT>, args?: string[]) => Promise<void>;
|
|
@@ -1126,9 +1155,7 @@ declare const changeCache: Record<string, ChangeCallback<RakeDbColumnTypes>[] |
|
|
|
1126
1155
|
/**
|
|
1127
1156
|
* Type of {@link rakeDb} function
|
|
1128
1157
|
*/
|
|
1129
|
-
type RakeDbFn = (<SchemaConfig extends ColumnSchemaConfig, CT extends RakeDbColumnTypes | undefined = undefined>(options: MaybeArray<AdapterOptions>, partialConfig?: InputRakeDbConfig<SchemaConfig, CT>, args?: string[]) =>
|
|
1130
|
-
promise: Promise<void>;
|
|
1131
|
-
}) & {
|
|
1158
|
+
type RakeDbFn = (<SchemaConfig extends ColumnSchemaConfig, CT extends RakeDbColumnTypes | undefined = undefined>(options: MaybeArray<AdapterOptions>, partialConfig?: InputRakeDbConfig<SchemaConfig, CT>, args?: string[]) => RakeDbFnReturns<CT>) & {
|
|
1132
1159
|
/**
|
|
1133
1160
|
* Unlike the original `rakeDb` that executes immediately,
|
|
1134
1161
|
* `rakeDb.lazy` returns the `run` function to be later called programmatically.
|
|
@@ -1139,6 +1166,9 @@ type RakeDbFn = (<SchemaConfig extends ColumnSchemaConfig, CT extends RakeDbColu
|
|
|
1139
1166
|
*/
|
|
1140
1167
|
lazy: RakeDbLazyFn;
|
|
1141
1168
|
};
|
|
1169
|
+
type RakeDbFnReturns<CT extends RakeDbColumnTypes | undefined> = RakeDbChangeFn<CT extends undefined ? DefaultColumnTypes<DefaultSchemaConfig> : CT> & {
|
|
1170
|
+
promise: Promise<void>;
|
|
1171
|
+
};
|
|
1142
1172
|
/**
|
|
1143
1173
|
* Type of {@link rakeDb.lazy} function
|
|
1144
1174
|
*/
|
|
@@ -1161,4 +1191,4 @@ type RakeDbChangeFn<CT extends RakeDbColumnTypes> = (fn: ChangeCallback<CT>) =>
|
|
|
1161
1191
|
*/
|
|
1162
1192
|
declare const rakeDb: RakeDbFn;
|
|
1163
1193
|
|
|
1164
|
-
export { AnyRakeDbConfig, AppCodeUpdater, AppCodeUpdaterParams, ChangeTableCallback, ChangeTableOptions, ColumnComment, ColumnsShapeCallback, ConstraintArg, DbMigration, DropMode, InputRakeDbConfig, Migration, MigrationColumnTypes, ModuleExportsRecord, NoMigrationsTableError, RAKE_DB_LOCK_KEY, RakeDbAppliedVersions, RakeDbAst, RakeDbBaseTable, RakeDbColumnTypes, RakeDbConfig, RakeDbMigrationId, SilentQueries, TableOptions, changeCache, createDb, createMigrationInterface, deleteMigratedVersion, dropDb, generate, generateTimeStamp, getDatabaseAndUserFromOptions, getMigratedVersionsMap, makeFileVersion, migrate, migrateOrRollback, migrationConfigDefaults, processRakeDbConfig, rakeDb, redo, resetDb, rollback, saveMigratedVersion, writeMigrationFile };
|
|
1194
|
+
export { AnyRakeDbConfig, AppCodeUpdater, AppCodeUpdaterParams, ChangeTableCallback, ChangeTableOptions, ColumnComment, ColumnsShapeCallback, ConstraintArg, DbMigration, DropMode, InputRakeDbConfig, Migration, MigrationAdapter, MigrationColumnTypes, ModuleExportsRecord, NoMigrationsTableError, RAKE_DB_LOCK_KEY, RakeDbAppliedVersions, RakeDbAst, RakeDbBaseTable, RakeDbChangeFn, RakeDbColumnTypes, RakeDbConfig, RakeDbFn, RakeDbFnReturns, RakeDbLazyFn, RakeDbMigrationId, SilentQueries, TableOptions, changeCache, createDb, createMigrationInterface, deleteMigratedVersion, dropDb, generate, generateTimeStamp, getDatabaseAndUserFromOptions, getMigratedVersionsMap, makeFileVersion, migrate, migrateOrRollback, migrationConfigDefaults, processRakeDbConfig, rakeDb, redo, resetDb, rollback, saveMigratedVersion, writeMigrationFile };
|
package/dist/index.js
CHANGED
|
@@ -41,16 +41,14 @@ const joinColumns = (columns) => {
|
|
|
41
41
|
const quoteWithSchema = ({
|
|
42
42
|
schema,
|
|
43
43
|
name
|
|
44
|
-
}) =>
|
|
45
|
-
|
|
46
|
-
};
|
|
44
|
+
}) => quoteTable(schema, name);
|
|
45
|
+
const quoteTable = (schema, table) => schema ? `"${schema}"."${table}"` : `"${table}"`;
|
|
47
46
|
const getSchemaAndTableFromName = (name) => {
|
|
48
47
|
const index = name.indexOf(".");
|
|
49
48
|
return index !== -1 ? [name.slice(0, index), name.slice(index + 1)] : [void 0, name];
|
|
50
49
|
};
|
|
51
50
|
const quoteNameFromString = (string) => {
|
|
52
|
-
|
|
53
|
-
return quoteWithSchema({ schema, name });
|
|
51
|
+
return quoteTable(...getSchemaAndTableFromName(string));
|
|
54
52
|
};
|
|
55
53
|
const quoteSchemaTable = ({
|
|
56
54
|
schema,
|
|
@@ -61,10 +59,7 @@ const quoteSchemaTable = ({
|
|
|
61
59
|
const makePopulateEnumQuery = (item) => {
|
|
62
60
|
const [schema, name] = getSchemaAndTableFromName(item.enumName);
|
|
63
61
|
return {
|
|
64
|
-
text: `SELECT unnest(enum_range(NULL::${
|
|
65
|
-
schema,
|
|
66
|
-
name
|
|
67
|
-
})}))::text`,
|
|
62
|
+
text: `SELECT unnest(enum_range(NULL::${quoteTable(schema, name)}))::text`,
|
|
68
63
|
then(result) {
|
|
69
64
|
item.options.push(...result.rows.map(([value]) => value));
|
|
70
65
|
}
|
|
@@ -191,7 +186,7 @@ const sequenceOptionsToSql = (item) => {
|
|
|
191
186
|
line.push(`CYCLE`);
|
|
192
187
|
if (item.ownedBy) {
|
|
193
188
|
const [schema, table] = getSchemaAndTableFromName(item.ownedBy);
|
|
194
|
-
line.push(`OWNED BY ${
|
|
189
|
+
line.push(`OWNED BY ${quoteTable(schema, table)}`);
|
|
195
190
|
}
|
|
196
191
|
return line.join(" ");
|
|
197
192
|
};
|
|
@@ -251,7 +246,7 @@ const foreignKeyToSql = (item, snakeCase) => {
|
|
|
251
246
|
const referencesToSql = (references, snakeCase) => {
|
|
252
247
|
const [schema, table] = getForeignKeyTable(references.fnOrTable);
|
|
253
248
|
const sql = [
|
|
254
|
-
`REFERENCES ${
|
|
249
|
+
`REFERENCES ${quoteTable(schema, table)}(${joinColumns(
|
|
255
250
|
snakeCase ? references.foreignColumns.map(orchidCore.toSnakeCase) : references.foreignColumns
|
|
256
251
|
)})`
|
|
257
252
|
];
|
|
@@ -289,7 +284,7 @@ const indexesToQuery = (up, { schema, name }, indexes, language) => {
|
|
|
289
284
|
if (options.unique) {
|
|
290
285
|
sql.push("UNIQUE");
|
|
291
286
|
}
|
|
292
|
-
sql.push(`INDEX "${indexName}" ON ${
|
|
287
|
+
sql.push(`INDEX "${indexName}" ON ${quoteTable(schema, name)}`);
|
|
293
288
|
const using = options.using || options.tsVector && "GIN";
|
|
294
289
|
if (using) {
|
|
295
290
|
sql.push(`USING ${using}`);
|
|
@@ -1152,7 +1147,13 @@ var __spreadValues$7 = (a, b) => {
|
|
|
1152
1147
|
};
|
|
1153
1148
|
var __spreadProps$4 = (a, b) => __defProps$4(a, __getOwnPropDescs$4(b));
|
|
1154
1149
|
const createMigrationInterface = (tx, up, config, asts) => {
|
|
1155
|
-
|
|
1150
|
+
var _a;
|
|
1151
|
+
const adapter = new pqb.TransactionAdapter(
|
|
1152
|
+
tx,
|
|
1153
|
+
tx.client,
|
|
1154
|
+
tx.types
|
|
1155
|
+
);
|
|
1156
|
+
adapter.schema = (_a = adapter.adapter.schema) != null ? _a : "public";
|
|
1156
1157
|
const { query, arrays } = adapter;
|
|
1157
1158
|
const log = pqb.logParamToLogObject(config.logger || console, config.log);
|
|
1158
1159
|
adapter.query = (q, types) => {
|
|
@@ -1204,10 +1205,21 @@ class Migration {
|
|
|
1204
1205
|
* });
|
|
1205
1206
|
* ```
|
|
1206
1207
|
*
|
|
1208
|
+
* Prefix table name with a schema to set a different schema:
|
|
1209
|
+
*
|
|
1210
|
+
* ```ts
|
|
1211
|
+
* import { change } from '../dbScript';
|
|
1212
|
+
*
|
|
1213
|
+
* change(async (db) => {
|
|
1214
|
+
* await db.renameTable('fromSchema.oldTable', 'toSchema.newTable');
|
|
1215
|
+
* });
|
|
1216
|
+
* ```
|
|
1217
|
+
*
|
|
1207
1218
|
* @param from - rename the table from
|
|
1208
1219
|
* @param to - rename the table to
|
|
1209
1220
|
*/
|
|
1210
1221
|
async renameTable(from, to) {
|
|
1222
|
+
var _a;
|
|
1211
1223
|
const [fromSchema, f] = getSchemaAndTableFromName(this.up ? from : to);
|
|
1212
1224
|
const [toSchema, t] = getSchemaAndTableFromName(this.up ? to : from);
|
|
1213
1225
|
const ast = {
|
|
@@ -1217,17 +1229,36 @@ class Migration {
|
|
|
1217
1229
|
toSchema,
|
|
1218
1230
|
to: t
|
|
1219
1231
|
};
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
|
|
1225
|
-
|
|
1226
|
-
|
|
1227
|
-
|
|
1228
|
-
|
|
1232
|
+
if (ast.from !== ast.to) {
|
|
1233
|
+
await this.adapter.query(
|
|
1234
|
+
`ALTER TABLE ${quoteTable(ast.fromSchema, ast.from)} RENAME TO "${ast.to}"`
|
|
1235
|
+
);
|
|
1236
|
+
}
|
|
1237
|
+
if (ast.fromSchema !== ast.toSchema) {
|
|
1238
|
+
await this.adapter.query(
|
|
1239
|
+
`ALTER TABLE ${quoteTable(ast.fromSchema, ast.to)} SET SCHEMA "${(_a = ast.toSchema) != null ? _a : this.adapter.schema}"`
|
|
1240
|
+
);
|
|
1241
|
+
}
|
|
1229
1242
|
this.migratedAsts.push(ast);
|
|
1230
1243
|
}
|
|
1244
|
+
/**
|
|
1245
|
+
* Set a different schema to the table:
|
|
1246
|
+
*
|
|
1247
|
+
* ```ts
|
|
1248
|
+
* import { change } from '../dbScript';
|
|
1249
|
+
*
|
|
1250
|
+
* change(async (db) => {
|
|
1251
|
+
* await db.changeTableSchema('tableName', 'fromSchema', 'toSchema');
|
|
1252
|
+
* });
|
|
1253
|
+
* ```
|
|
1254
|
+
*
|
|
1255
|
+
* @param table - table name
|
|
1256
|
+
* @param from - current table schema
|
|
1257
|
+
* @param to - desired table schema
|
|
1258
|
+
*/
|
|
1259
|
+
changeTableSchema(table, from, to) {
|
|
1260
|
+
return this.renameTable(`${from}.${table}`, `${to}.${table}`);
|
|
1261
|
+
}
|
|
1231
1262
|
/**
|
|
1232
1263
|
* Add a column to the table on migrating, and remove it on rollback.
|
|
1233
1264
|
*
|
|
@@ -2077,9 +2108,7 @@ const changeIds = async (options, config, [arg]) => {
|
|
|
2077
2108
|
};
|
|
2078
2109
|
const renameMigrationVersionsInDb = async (config, adapter, values) => {
|
|
2079
2110
|
await adapter.arrays({
|
|
2080
|
-
text: `UPDATE ${
|
|
2081
|
-
name: config.migrationsTable
|
|
2082
|
-
})} AS t SET version = v.version FROM (VALUES ${values.map(
|
|
2111
|
+
text: `UPDATE "${config.migrationsTable}" AS t SET version = v.version FROM (VALUES ${values.map(
|
|
2083
2112
|
([oldVersion, , newVersion], i) => `('${oldVersion}', $${i + 1}, '${newVersion}')`
|
|
2084
2113
|
).join(
|
|
2085
2114
|
", "
|
|
@@ -2232,17 +2261,13 @@ function getDigitsPrefix(name) {
|
|
|
2232
2261
|
|
|
2233
2262
|
const saveMigratedVersion = async (db, version, name, config) => {
|
|
2234
2263
|
await db.silentArrays({
|
|
2235
|
-
text: `INSERT INTO ${
|
|
2236
|
-
name: config.migrationsTable
|
|
2237
|
-
})}(version, name) VALUES ($1, $2)`,
|
|
2264
|
+
text: `INSERT INTO "${config.migrationsTable}"(version, name) VALUES ($1, $2)`,
|
|
2238
2265
|
values: [version, name]
|
|
2239
2266
|
});
|
|
2240
2267
|
};
|
|
2241
2268
|
const deleteMigratedVersion = async (db, version, name, config) => {
|
|
2242
2269
|
const res = await db.silentArrays({
|
|
2243
|
-
text: `DELETE FROM ${
|
|
2244
|
-
name: config.migrationsTable
|
|
2245
|
-
})} WHERE version = $1 AND name = $2`,
|
|
2270
|
+
text: `DELETE FROM "${config.migrationsTable}" WHERE version = $1 AND name = $2`,
|
|
2246
2271
|
values: [version, name]
|
|
2247
2272
|
});
|
|
2248
2273
|
if (res.rowCount === 0) {
|
|
@@ -2253,9 +2278,7 @@ class NoMigrationsTableError extends Error {
|
|
|
2253
2278
|
}
|
|
2254
2279
|
const getMigratedVersionsMap = async (ctx, adapter, config, renameTo) => {
|
|
2255
2280
|
try {
|
|
2256
|
-
const table =
|
|
2257
|
-
name: config.migrationsTable
|
|
2258
|
-
});
|
|
2281
|
+
const table = `"${config.migrationsTable}"`;
|
|
2259
2282
|
const result = await adapter.arrays(
|
|
2260
2283
|
`SELECT * FROM ${table} ORDER BY version`
|
|
2261
2284
|
);
|
|
@@ -2359,9 +2382,7 @@ const createMigrationsTable = async (db, config) => {
|
|
|
2359
2382
|
}
|
|
2360
2383
|
try {
|
|
2361
2384
|
await db.query(
|
|
2362
|
-
`CREATE TABLE ${
|
|
2363
|
-
name: config.migrationsTable
|
|
2364
|
-
})} ( version TEXT NOT NULL, name TEXT NOT NULL )`
|
|
2385
|
+
`CREATE TABLE "${config.migrationsTable}" ( version TEXT NOT NULL, name TEXT NOT NULL )`
|
|
2365
2386
|
);
|
|
2366
2387
|
(_b = config.logger) == null ? void 0 : _b.log("Created versions table");
|
|
2367
2388
|
} catch (err) {
|