gg-mysql-connector 1.0.53 → 1.0.57

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.
@@ -123,7 +123,16 @@ class MyDBMigrator {
123
123
  return `"${row}"`;
124
124
  })
125
125
  .join(", ");
126
- await this.MyDB.query(`ALTER TABLE ${tableName} MODIFY COLUMN ${columnName} ENUM(${possibleValueString}) NOT NULL;`);
126
+ try {
127
+ await this.MyDB.query(`ALTER TABLE ${tableName} MODIFY COLUMN ${columnName} ENUM(${possibleValueString}) ;`);
128
+ }
129
+ catch (e) {
130
+ const data = await this.MyDB.query(`SELECT DISTINCT(${columnName}) as columnValue FROM ${tableName}`);
131
+ const valueInColumn = data.map((dRow) => `['${dRow.columnValue}']`);
132
+ const problemValue = valueInColumn.filter((row) => !possibleValue.includes(row));
133
+ console.log(chalk_1.default.bgRed.white(`error table(${tableName}) - column (${columnName}) has problem value is ${problemValue.join(", ")}`));
134
+ throw e;
135
+ }
127
136
  }
128
137
  }
129
138
  async migrateView(viewDirectory) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gg-mysql-connector",
3
- "version": "1.0.53",
3
+ "version": "1.0.57",
4
4
  "description": "",
5
5
  "main": "dist/src/index.js",
6
6
  "scripts": {
@@ -202,9 +202,29 @@ export default class MyDBMigrator {
202
202
  })
203
203
  .join(", ")
204
204
 
205
- await this.MyDB.query(
206
- `ALTER TABLE ${tableName} MODIFY COLUMN ${columnName} ENUM(${possibleValueString}) NOT NULL;`
207
- )
205
+ try {
206
+ await this.MyDB.query(
207
+ `ALTER TABLE ${tableName} MODIFY COLUMN ${columnName} ENUM(${possibleValueString}) ;`
208
+ )
209
+ } catch (e) {
210
+ const data: { columnValue: any }[] = await this.MyDB.query(
211
+ `SELECT DISTINCT(${columnName}) as columnValue FROM ${tableName}`
212
+ )
213
+ const valueInColumn = data.map((dRow) => `['${dRow.columnValue}']`)
214
+
215
+ const problemValue = valueInColumn.filter(
216
+ (row) => !possibleValue.includes(row)
217
+ )
218
+
219
+ console.log(
220
+ chalk.bgRed.white(
221
+ `error table(${tableName}) - column (${columnName}) has problem value is ${problemValue.join(
222
+ ", "
223
+ )}`
224
+ )
225
+ )
226
+ throw e
227
+ }
208
228
  }
209
229
  }
210
230