typesql-cli 0.9.6 → 0.10.1

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.
Files changed (110) hide show
  1. package/README.md +2 -3
  2. package/cli.js +76 -78
  3. package/cli.js.map +1 -1
  4. package/code-generator.d.ts +7 -7
  5. package/code-generator.d.ts.map +1 -1
  6. package/code-generator.js +193 -194
  7. package/code-generator.js.map +1 -1
  8. package/describe-dynamic-query.d.ts +1 -1
  9. package/describe-dynamic-query.d.ts.map +1 -1
  10. package/describe-dynamic-query.js +47 -42
  11. package/describe-dynamic-query.js.map +1 -1
  12. package/describe-nested-query.d.ts +2 -2
  13. package/describe-nested-query.d.ts.map +1 -1
  14. package/describe-nested-query.js +28 -25
  15. package/describe-nested-query.js.map +1 -1
  16. package/describe-query.d.ts +4 -4
  17. package/describe-query.d.ts.map +1 -1
  18. package/describe-query.js +24 -25
  19. package/describe-query.js.map +1 -1
  20. package/drivers/libsql.d.ts +2 -2
  21. package/drivers/libsql.d.ts.map +1 -1
  22. package/drivers/libsql.js +4 -5
  23. package/drivers/libsql.js.map +1 -1
  24. package/mysql-mapping.d.ts +1 -1
  25. package/mysql-mapping.d.ts.map +1 -1
  26. package/mysql-mapping.js +13 -13
  27. package/mysql-mapping.js.map +1 -1
  28. package/mysql-query-analyzer/collect-constraints.d.ts +4 -4
  29. package/mysql-query-analyzer/collect-constraints.d.ts.map +1 -1
  30. package/mysql-query-analyzer/collect-constraints.js +29 -31
  31. package/mysql-query-analyzer/collect-constraints.js.map +1 -1
  32. package/mysql-query-analyzer/infer-column-nullability.d.ts +2 -2
  33. package/mysql-query-analyzer/infer-column-nullability.d.ts.map +1 -1
  34. package/mysql-query-analyzer/infer-column-nullability.js +61 -63
  35. package/mysql-query-analyzer/infer-column-nullability.js.map +1 -1
  36. package/mysql-query-analyzer/infer-param-nullability.d.ts +2 -2
  37. package/mysql-query-analyzer/infer-param-nullability.d.ts.map +1 -1
  38. package/mysql-query-analyzer/infer-param-nullability.js +13 -14
  39. package/mysql-query-analyzer/infer-param-nullability.js.map +1 -1
  40. package/mysql-query-analyzer/parse.d.ts +2 -2
  41. package/mysql-query-analyzer/parse.d.ts.map +1 -1
  42. package/mysql-query-analyzer/parse.js +42 -40
  43. package/mysql-query-analyzer/parse.js.map +1 -1
  44. package/mysql-query-analyzer/select-columns.d.ts +4 -4
  45. package/mysql-query-analyzer/select-columns.d.ts.map +1 -1
  46. package/mysql-query-analyzer/select-columns.js +70 -65
  47. package/mysql-query-analyzer/select-columns.js.map +1 -1
  48. package/mysql-query-analyzer/traverse.d.ts +4 -4
  49. package/mysql-query-analyzer/traverse.d.ts.map +1 -1
  50. package/mysql-query-analyzer/traverse.js +211 -188
  51. package/mysql-query-analyzer/traverse.js.map +1 -1
  52. package/mysql-query-analyzer/types.d.ts +5 -5
  53. package/mysql-query-analyzer/types.d.ts.map +1 -1
  54. package/mysql-query-analyzer/unify.d.ts +2 -2
  55. package/mysql-query-analyzer/unify.d.ts.map +1 -1
  56. package/mysql-query-analyzer/unify.js +485 -487
  57. package/mysql-query-analyzer/unify.js.map +1 -1
  58. package/mysql-query-analyzer/util.d.ts.map +1 -1
  59. package/mysql-query-analyzer/util.js +4 -6
  60. package/mysql-query-analyzer/util.js.map +1 -1
  61. package/mysql-query-analyzer/verify-multiple-result.d.ts +2 -2
  62. package/mysql-query-analyzer/verify-multiple-result.d.ts.map +1 -1
  63. package/mysql-query-analyzer/verify-multiple-result.js +9 -9
  64. package/mysql-query-analyzer/verify-multiple-result.js.map +1 -1
  65. package/package.json +46 -44
  66. package/queryExectutor.d.ts +4 -4
  67. package/queryExectutor.d.ts.map +1 -1
  68. package/queryExectutor.js +48 -51
  69. package/queryExectutor.js.map +1 -1
  70. package/sql-generator.d.ts +2 -2
  71. package/sql-generator.d.ts.map +1 -1
  72. package/sql-generator.js +30 -29
  73. package/sql-generator.js.map +1 -1
  74. package/sqlite-query-analyzer/code-generator.d.ts +6 -6
  75. package/sqlite-query-analyzer/code-generator.d.ts.map +1 -1
  76. package/sqlite-query-analyzer/code-generator.js +226 -177
  77. package/sqlite-query-analyzer/code-generator.js.map +1 -1
  78. package/sqlite-query-analyzer/parser.d.ts +4 -4
  79. package/sqlite-query-analyzer/parser.d.ts.map +1 -1
  80. package/sqlite-query-analyzer/parser.js +17 -18
  81. package/sqlite-query-analyzer/parser.js.map +1 -1
  82. package/sqlite-query-analyzer/query-executor.d.ts +6 -6
  83. package/sqlite-query-analyzer/query-executor.d.ts.map +1 -1
  84. package/sqlite-query-analyzer/query-executor.js +42 -33
  85. package/sqlite-query-analyzer/query-executor.js.map +1 -1
  86. package/sqlite-query-analyzer/replace-list-params.d.ts +1 -1
  87. package/sqlite-query-analyzer/replace-list-params.d.ts.map +1 -1
  88. package/sqlite-query-analyzer/replace-list-params.js +5 -5
  89. package/sqlite-query-analyzer/replace-list-params.js.map +1 -1
  90. package/sqlite-query-analyzer/sqlite-describe-nested-query.d.ts +4 -4
  91. package/sqlite-query-analyzer/sqlite-describe-nested-query.d.ts.map +1 -1
  92. package/sqlite-query-analyzer/sqlite-describe-nested-query.js +19 -17
  93. package/sqlite-query-analyzer/sqlite-describe-nested-query.js.map +1 -1
  94. package/sqlite-query-analyzer/traverse.d.ts +5 -5
  95. package/sqlite-query-analyzer/traverse.d.ts.map +1 -1
  96. package/sqlite-query-analyzer/traverse.js +185 -155
  97. package/sqlite-query-analyzer/traverse.js.map +1 -1
  98. package/ts-dynamic-query-descriptor.d.ts +1 -1
  99. package/ts-dynamic-query-descriptor.d.ts.map +1 -1
  100. package/ts-dynamic-query-descriptor.js +7 -8
  101. package/ts-dynamic-query-descriptor.js.map +1 -1
  102. package/ts-nested-descriptor.d.ts +4 -4
  103. package/ts-nested-descriptor.d.ts.map +1 -1
  104. package/ts-nested-descriptor.js +13 -14
  105. package/ts-nested-descriptor.js.map +1 -1
  106. package/types.d.ts +18 -15
  107. package/types.d.ts.map +1 -1
  108. package/util.d.ts.map +1 -1
  109. package/util.js.map +1 -1
  110. package/utility-types.d.ts.map +1 -1
@@ -1,16 +1,17 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.unionTypeResult = exports.substitute = exports.unify = void 0;
3
+ exports.unify = unify;
4
+ exports.substitute = substitute;
5
+ exports.unionTypeResult = unionTypeResult;
4
6
  function unify(constraints, substitutions) {
5
7
  for (const constraint of constraints) {
6
8
  unifyOne(constraint, substitutions);
7
9
  }
8
10
  }
9
- exports.unify = unify;
10
11
  function unifyOne(constraint, substitutions) {
11
12
  const ty1 = substitute(constraint.type1, substitutions);
12
13
  const ty2 = substitute(constraint.type2, substitutions);
13
- if (ty1.kind == 'TypeOperator' && ty2.kind == 'TypeOperator') {
14
+ if (ty1.kind === 'TypeOperator' && ty2.kind === 'TypeOperator') {
14
15
  ty1.types.forEach((t, i) => {
15
16
  const newConstr = {
16
17
  expression: 'list',
@@ -20,20 +21,20 @@ function unifyOne(constraint, substitutions) {
20
21
  unifyOne(newConstr, substitutions);
21
22
  });
22
23
  }
23
- else if (ty1.kind == 'TypeVar' && ty2.kind == 'TypeVar') {
24
+ else if (ty1.kind === 'TypeVar' && ty2.kind === 'TypeVar') {
24
25
  // if (ty1.id == ty2.id) return;
25
- if (ty1.type != '?') {
26
- if (ty2.type != '?') {
26
+ if (ty1.type !== '?') {
27
+ if (ty2.type !== '?') {
27
28
  const bestType = getBestPossibleType(ty1.type, ty2.type, constraint.mostGeneralType, constraint.coercionType);
28
29
  substitutions[ty1.id] = Object.assign(Object.assign({}, ty1), { type: bestType });
29
30
  }
30
31
  else {
31
32
  //type2 = ?
32
33
  let newType = ty1.type;
33
- if (constraint.coercionType == 'Sum') {
34
+ if (constraint.coercionType === 'Sum') {
34
35
  newType = 'double';
35
36
  }
36
- if (constraint.coercionType == 'Coalesce') {
37
+ if (constraint.coercionType === 'Coalesce') {
37
38
  newType = 'any';
38
39
  }
39
40
  substitutions[ty2.id] = Object.assign(Object.assign({}, ty1), { list: ty2.list, type: newType });
@@ -42,12 +43,12 @@ function unifyOne(constraint, substitutions) {
42
43
  }
43
44
  else {
44
45
  ty2.list = ty1.list;
45
- if (constraint.coercionType == 'SumFunction') {
46
+ if (constraint.coercionType === 'SumFunction') {
46
47
  const bestType = getSumFunctionType(ty2.type);
47
48
  substitutions[ty1.id] = Object.assign(Object.assign({}, ty2), { type: bestType });
48
49
  substitutions[ty2.id] = Object.assign(Object.assign({}, ty2), { type: bestType });
49
50
  }
50
- else if (constraint.coercionType == 'Sum') {
51
+ else if (constraint.coercionType === 'Sum') {
51
52
  const bestType = getSumType(ty2.type);
52
53
  substitutions[ty1.id] = Object.assign(Object.assign({}, ty2), { type: bestType });
53
54
  substitutions[ty2.id] = Object.assign(Object.assign({}, ty2), { type: bestType });
@@ -58,14 +59,14 @@ function unifyOne(constraint, substitutions) {
58
59
  }
59
60
  }
60
61
  //todo - remove
61
- else if (ty1.kind == 'TypeVar' && ty2.kind == 'TypeOperator') {
62
- ty2.types.forEach(t => {
62
+ else if (ty1.kind === 'TypeVar' && ty2.kind === 'TypeOperator') {
63
+ ty2.types.forEach((t) => {
63
64
  t.list = true;
64
65
  const newContraint = Object.assign(Object.assign({}, constraint), { type1: ty1, type2: t });
65
66
  unifyOne(newContraint, substitutions);
66
67
  });
67
68
  }
68
- if (ty1.kind == 'TypeOperator' && ty2.kind == 'TypeVar') {
69
+ if (ty1.kind === 'TypeOperator' && ty2.kind === 'TypeVar') {
69
70
  const newConstraint = Object.assign(Object.assign({}, constraint), { type1: ty2, type2: ty1 });
70
71
  unifyOne(newConstraint, substitutions);
71
72
  }
@@ -86,16 +87,14 @@ function getSumFunctionType(type) {
86
87
  if (exactValueNumbers.indexOf(type) >= 0) {
87
88
  return 'decimal';
88
89
  }
89
- else {
90
- return 'double';
91
- }
90
+ return 'double';
92
91
  }
93
92
  function getBestPossibleType(type1, type2, max, coercionType) {
94
93
  // Is possible to convert text to date
95
94
  const sqliteDateCoercionOrder = ['TEXT', 'DATE'];
96
95
  const sqliteIndexDateType1 = sqliteDateCoercionOrder.indexOf(type1);
97
96
  const sqliteIndexDateType2 = sqliteDateCoercionOrder.indexOf(type2);
98
- if (sqliteIndexDateType1 != -1 && sqliteIndexDateType1 != -1) {
97
+ if (sqliteIndexDateType1 !== -1 && sqliteIndexDateType1 !== -1) {
99
98
  const index = Math.max(sqliteIndexDateType1, sqliteIndexDateType2);
100
99
  return sqliteDateCoercionOrder[index];
101
100
  }
@@ -103,50 +102,49 @@ function getBestPossibleType(type1, type2, max, coercionType) {
103
102
  const sqliteNumberCoercionOrder = ['INTEGER', 'REAL', 'NUMERIC'];
104
103
  const sqliteIndexNumberType1 = sqliteNumberCoercionOrder.indexOf(type1);
105
104
  const sqliteIndexNumberType2 = sqliteNumberCoercionOrder.indexOf(type2);
106
- if (sqliteIndexNumberType1 != -1 && sqliteIndexNumberType2 != -1) {
105
+ if (sqliteIndexNumberType1 !== -1 && sqliteIndexNumberType2 !== -1) {
107
106
  const index = max ? Math.max(sqliteIndexNumberType1, sqliteIndexNumberType2) : Math.min(sqliteIndexNumberType1, sqliteIndexNumberType2);
108
107
  return sqliteNumberCoercionOrder[index];
109
108
  }
110
- if (coercionType == 'Union') {
109
+ if (coercionType === 'Union') {
111
110
  const unionType = unionTypeResult(type1, type2);
112
111
  return unionType;
113
112
  }
114
- if (coercionType == 'SumFunction') {
113
+ if (coercionType === 'SumFunction') {
115
114
  const exactValueNumbers = ['int', 'bigint', 'decimal'];
116
115
  if (exactValueNumbers.indexOf(type2) >= 0) {
117
116
  return 'decimal';
118
117
  }
119
- else {
120
- return 'double';
121
- }
118
+ return 'double';
122
119
  }
123
- if (coercionType == 'Ceiling' && (type1 == 'decimal' || type2 == 'decimal')) { //ceiling(decimal) returns bigint
120
+ if (coercionType === 'Ceiling' && (type1 === 'decimal' || type2 === 'decimal')) {
121
+ //ceiling(decimal) returns bigint
124
122
  return 'bigint';
125
123
  }
126
- if (type1 == 'any') {
127
- return coercionType == 'Coalesce' ? type2 : type2;
124
+ if (type1 === 'any') {
125
+ return coercionType === 'Coalesce' ? type2 : type2;
128
126
  }
129
- if (type2 == 'any') {
130
- return coercionType == 'Coalesce' ? 'any' : type1;
127
+ if (type2 === 'any') {
128
+ return coercionType === 'Coalesce' ? 'any' : type1;
131
129
  }
132
- if (coercionType == 'Sum' && isNumericType(type1) && isNumericType(type2) && (type1 == 'number' || type2 == 'number'))
130
+ if (coercionType === 'Sum' && isNumericType(type1) && isNumericType(type2) && (type1 === 'number' || type2 === 'number'))
133
131
  return 'double';
134
- if (coercionType == 'Sum' && max && type1 == 'int' && type2 == 'int')
132
+ if (coercionType === 'Sum' && max && type1 === 'int' && type2 === 'int')
135
133
  return 'bigint';
136
- if (coercionType == 'Sum' && max && type1 == 'date' && type2 == 'date')
134
+ if (coercionType === 'Sum' && max && type1 === 'date' && type2 === 'date')
137
135
  return 'bigint';
138
136
  //enum
139
- if (type1 == type2) {
137
+ if (type1 === type2) {
140
138
  return type1;
141
139
  }
142
140
  const order = ['number', 'bit', 'tinyint', 'year', 'smallint', 'int', 'bigint', 'decimal', 'float', 'double', 'varchar'];
143
141
  const indexType1 = order.indexOf(type1);
144
142
  const indexType2 = order.indexOf(type2);
145
- if (indexType1 != -1 && indexType2 != -1) {
143
+ if (indexType1 !== -1 && indexType2 !== -1) {
146
144
  const index = max ? Math.max(indexType1, indexType2) : Math.min(indexType1, indexType2);
147
145
  const resultType = order[index];
148
- if (resultType == 'varchar' && coercionType == 'Numeric') {
149
- throw Error('Type mismatch: ' + type1 + ' and ' + type2);
146
+ if (resultType === 'varchar' && coercionType === 'Numeric') {
147
+ throw Error(`Type mismatch: ${type1} and ${type2}`);
150
148
  }
151
149
  return resultType;
152
150
  }
@@ -155,7 +153,7 @@ function getBestPossibleType(type1, type2, max, coercionType) {
155
153
  const order2 = ['char', 'varchar', 'tinytext', 'mediumtext', 'text', 'longtext'];
156
154
  const indexStrType1 = order2.indexOf(newType1);
157
155
  const indexStrType2 = order2.indexOf(newType2);
158
- if (indexStrType1 != -1 && indexStrType2 != -1) {
156
+ if (indexStrType1 !== -1 && indexStrType2 !== -1) {
159
157
  const index = max ? Math.max(indexStrType1, indexStrType2) : Math.min(indexStrType1, indexStrType2);
160
158
  return order2[index];
161
159
  }
@@ -163,7 +161,7 @@ function getBestPossibleType(type1, type2, max, coercionType) {
163
161
  const dateTypeOrder = ['date', 'datetime'];
164
162
  const indexDateType1 = dateTypeOrder.indexOf(type1);
165
163
  const indexDateType2 = dateTypeOrder.indexOf(type2);
166
- if (indexDateType1 != -1 && indexDateType2 != -1) {
164
+ if (indexDateType1 !== -1 && indexDateType2 !== -1) {
167
165
  const index = max ? Math.max(indexDateType1, indexDateType2) : Math.min(indexDateType1, indexDateType2);
168
166
  return dateTypeOrder[index];
169
167
  }
@@ -171,27 +169,27 @@ function getBestPossibleType(type1, type2, max, coercionType) {
171
169
  const dateTypeLiteralOrder = ['time', 'datetime'];
172
170
  const indexDateLiteralType1 = dateTypeLiteralOrder.indexOf(type1);
173
171
  const indexDateLiteralType2 = dateTypeLiteralOrder.indexOf(type2);
174
- if (indexDateLiteralType1 != -1 && indexDateLiteralType2 != -1) {
172
+ if (indexDateLiteralType1 !== -1 && indexDateLiteralType2 !== -1) {
175
173
  const index = max ? Math.max(indexDateLiteralType1, indexDateLiteralType2) : Math.min(indexDateLiteralType1, indexDateLiteralType2);
176
174
  return dateTypeLiteralOrder[index];
177
175
  }
178
- throw Error('Type mismatch: ' + type1 + ' and ' + type2);
176
+ throw Error(`Type mismatch: ${type1} and ${type2}`);
179
177
  }
180
178
  function substitute(type, substitutions) {
181
- if (type.kind == 'TypeVar' && type.type != '?') {
179
+ if (type.kind === 'TypeVar' && type.type !== '?') {
182
180
  const subs = substitutions[type.id];
183
181
  if (subs) {
184
- if (type.id != subs.id) {
182
+ if (type.id !== subs.id) {
185
183
  return substitute(subs, substitutions);
186
184
  }
187
185
  return subs;
188
186
  }
189
187
  return type;
190
188
  }
191
- if (type.kind == 'TypeVar' && type.type == '?') {
189
+ if (type.kind === 'TypeVar' && type.type === '?') {
192
190
  const subs = substitutions[type.id];
193
191
  if (subs) {
194
- if (type.id != subs.id) {
192
+ if (type.id !== subs.id) {
195
193
  return substitute(subs, substitutions);
196
194
  }
197
195
  return subs;
@@ -200,7 +198,6 @@ function substitute(type, substitutions) {
200
198
  }
201
199
  return type;
202
200
  }
203
- exports.substitute = substitute;
204
201
  function isNumericType(type) {
205
202
  const numericTypes = ['number', 'tinyint', 'year', 'smallint', 'int', 'bigint', 'decimal', 'float', 'double'];
206
203
  return numericTypes.indexOf(type) >= 0;
@@ -208,456 +205,457 @@ function isNumericType(type) {
208
205
  function unionTypeResult(type1, type2) {
209
206
  //Gernerated with tests\check-mysql-inference.ts
210
207
  const typeMapping = {
211
- "number_int": "int",
212
- "bigint_number": "bigint",
213
- "decimal_tinyint": "decimal",
214
- "decimal_smallint": "decimal",
215
- "decimal_int": "decimal",
216
- "decimal_float": "double",
217
- "decimal_double": "double",
218
- "decimal_timestamp": "varchar",
219
- "decimal_bigint": "decimal",
220
- "decimal_mediumint": "decimal",
221
- "decimal_date": "varchar",
222
- "decimal_time": "varchar",
223
- "decimal_datetime": "varchar",
224
- "decimal_year": "decimal",
225
- "decimal_varchar": "varchar",
226
- "decimal_bit": "decimal",
227
- "decimal_json": "varbinary",
228
- "decimal_enum": "varchar",
229
- "decimal_set": "varchar",
230
- "decimal_tinyblob": "text",
231
- "decimal_mediumblob": "text",
232
- "decimal_longblob": "longtext",
233
- "decimal_blob": "text",
234
- "decimal_tinytext": "text",
235
- "decimal_mediumtext": "text",
236
- "decimal_longtext": "longtext",
237
- "decimal_text": "text",
238
- "decimal_varbinary": "varbinary",
239
- "decimal_binary": "binary",
240
- "decimal_char": "binary",
241
- "decimal_geometry": "varbinary",
242
- "tinyint_smallint": "smallint",
243
- "tinyint_int": "int",
244
- "tinyint_float": "float",
245
- "tinyint_double": "double",
246
- "tinyint_timestamp": "varchar",
247
- "tinyint_bigint": "bigint",
248
- "tinyint_mediumint": "mediumint",
249
- "tinyint_date": "varchar",
250
- "tinyint_time": "varchar",
251
- "tinyint_datetime": "varchar",
252
- "tinyint_year": "tinyint",
253
- "tinyint_varchar": "varchar",
254
- "tinyint_bit": "decimal",
255
- "tinyint_json": "varbinary",
256
- "tinyint_enum": "varchar",
257
- "tinyint_set": "varchar",
258
- "tinyint_tinyblob": "text",
259
- "tinyint_mediumblob": "text",
260
- "tinyint_longblob": "longtext",
261
- "tinyint_blob": "text",
262
- "tinyint_tinytext": "text",
263
- "tinyint_mediumtext": "text",
264
- "tinyint_longtext": "longtext",
265
- "tinyint_text": "text",
266
- "tinyint_varbinary": "varbinary",
267
- "tinyint_binary": "binary",
268
- "tinyint_char": "binary",
269
- "tinyint_geometry": "varbinary",
270
- "smallint_int": "int",
271
- "smallint_float": "float",
272
- "smallint_double": "double",
273
- "smallint_timestamp": "varchar",
274
- "smallint_bigint": "bigint",
275
- "smallint_mediumint": "mediumint",
276
- "smallint_date": "varchar",
277
- "smallint_time": "varchar",
278
- "smallint_datetime": "varchar",
279
- "smallint_year": "smallint",
280
- "smallint_varchar": "varchar",
281
- "smallint_bit": "decimal",
282
- "smallint_json": "varbinary",
283
- "smallint_enum": "varchar",
284
- "smallint_set": "varchar",
285
- "smallint_tinyblob": "text",
286
- "smallint_mediumblob": "text",
287
- "smallint_longblob": "longtext",
288
- "smallint_blob": "text",
289
- "smallint_tinytext": "text",
290
- "smallint_mediumtext": "text",
291
- "smallint_longtext": "longtext",
292
- "smallint_text": "text",
293
- "smallint_varbinary": "varbinary",
294
- "smallint_binary": "binary",
295
- "smallint_char": "binary",
296
- "smallint_geometry": "varbinary",
297
- "int_float": "double",
298
- "int_double": "double",
299
- "int_timestamp": "varchar",
300
- "int_bigint": "bigint",
301
- "int_mediumint": "int",
302
- "int_date": "varchar",
303
- "int_time": "varchar",
304
- "int_datetime": "varchar",
305
- "int_year": "int",
306
- "int_varchar": "varchar",
307
- "int_bit": "decimal",
308
- "int_json": "varbinary",
309
- "int_enum": "varchar",
310
- "int_set": "varchar",
311
- "int_tinyblob": "text",
312
- "int_mediumblob": "text",
313
- "int_longblob": "longtext",
314
- "int_blob": "text",
315
- "int_tinytext": "text",
316
- "int_mediumtext": "text",
317
- "int_longtext": "longtext",
318
- "int_text": "text",
319
- "int_varbinary": "varbinary",
320
- "int_binary": "binary",
321
- "int_char": "binary",
322
- "int_geometry": "varbinary",
323
- "float_double": "double",
324
- "float_timestamp": "varchar",
325
- "float_bigint": "float",
326
- "float_mediumint": "float",
327
- "float_date": "varchar",
328
- "float_time": "varchar",
329
- "float_datetime": "varchar",
330
- "float_year": "float",
331
- "float_varchar": "varchar",
332
- "float_bit": "double",
333
- "float_json": "varbinary",
334
- "float_enum": "varchar",
335
- "float_set": "varchar",
336
- "float_tinyblob": "text",
337
- "float_mediumblob": "text",
338
- "float_longblob": "longtext",
339
- "float_blob": "text",
340
- "float_tinytext": "text",
341
- "float_mediumtext": "text",
342
- "float_longtext": "longtext",
343
- "float_text": "text",
344
- "float_varbinary": "varbinary",
345
- "float_binary": "binary",
346
- "float_char": "binary",
347
- "float_geometry": "varbinary",
348
- "double_timestamp": "varchar",
349
- "double_bigint": "double",
350
- "double_mediumint": "double",
351
- "double_date": "varchar",
352
- "double_time": "varchar",
353
- "double_datetime": "varchar",
354
- "double_year": "double",
355
- "double_varchar": "varchar",
356
- "double_bit": "double",
357
- "double_json": "varbinary",
358
- "double_enum": "varchar",
359
- "double_set": "varchar",
360
- "double_tinyblob": "text",
361
- "double_mediumblob": "text",
362
- "double_longblob": "longtext",
363
- "double_blob": "text",
364
- "double_tinytext": "text",
365
- "double_mediumtext": "text",
366
- "double_longtext": "longtext",
367
- "double_text": "text",
368
- "double_varbinary": "varbinary",
369
- "double_binary": "binary",
370
- "double_char": "binary",
371
- "double_geometry": "varbinary",
372
- "timestamp_bigint": "varchar",
373
- "timestamp_mediumint": "varchar",
374
- "timestamp_date": "datetime",
375
- "timestamp_time": "datetime",
376
- "timestamp_datetime": "datetime",
377
- "timestamp_year": "varchar",
378
- "timestamp_varchar": "varchar",
379
- "timestamp_bit": "varbinary",
380
- "timestamp_json": "varbinary",
381
- "timestamp_enum": "varchar",
382
- "timestamp_set": "varchar",
383
- "timestamp_tinyblob": "text",
384
- "timestamp_mediumblob": "text",
385
- "timestamp_longblob": "longtext",
386
- "timestamp_blob": "text",
387
- "timestamp_tinytext": "text",
388
- "timestamp_mediumtext": "text",
389
- "timestamp_longtext": "longtext",
390
- "timestamp_text": "text",
391
- "timestamp_varbinary": "varbinary",
392
- "timestamp_binary": "binary",
393
- "timestamp_char": "binary",
394
- "timestamp_geometry": "varbinary",
395
- "bigint_mediumint": "bigint",
396
- "bigint_date": "varchar",
397
- "bigint_time": "varchar",
398
- "bigint_datetime": "varchar",
399
- "bigint_year": "bigint",
400
- "bigint_varchar": "varchar",
401
- "bigint_bit": "decimal",
402
- "bigint_json": "varbinary",
403
- "bigint_enum": "varchar",
404
- "bigint_set": "varchar",
405
- "bigint_tinyblob": "text",
406
- "bigint_mediumblob": "text",
407
- "bigint_longblob": "longtext",
408
- "bigint_blob": "text",
409
- "bigint_tinytext": "text",
410
- "bigint_mediumtext": "text",
411
- "bigint_longtext": "longtext",
412
- "bigint_text": "text",
413
- "bigint_varbinary": "varbinary",
414
- "bigint_binary": "binary",
415
- "bigint_char": "binary",
416
- "bigint_geometry": "varbinary",
417
- "mediumint_date": "varchar",
418
- "mediumint_time": "varchar",
419
- "mediumint_datetime": "varchar",
420
- "mediumint_year": "mediumint",
421
- "mediumint_varchar": "varchar",
422
- "mediumint_bit": "decimal",
423
- "mediumint_json": "varbinary",
424
- "mediumint_enum": "varchar",
425
- "mediumint_set": "varchar",
426
- "mediumint_tinyblob": "text",
427
- "mediumint_mediumblob": "text",
428
- "mediumint_longblob": "longtext",
429
- "mediumint_blob": "text",
430
- "mediumint_tinytext": "text",
431
- "mediumint_mediumtext": "text",
432
- "mediumint_longtext": "longtext",
433
- "mediumint_text": "text",
434
- "mediumint_varbinary": "varbinary",
435
- "mediumint_binary": "binary",
436
- "mediumint_char": "binary",
437
- "mediumint_geometry": "varbinary",
438
- "date_time": "datetime",
439
- "date_datetime": "datetime",
440
- "date_year": "varchar",
441
- "date_varchar": "varchar",
442
- "date_bit": "varbinary",
443
- "date_json": "varbinary",
444
- "date_enum": "varchar",
445
- "date_set": "varchar",
446
- "date_tinyblob": "text",
447
- "date_mediumblob": "text",
448
- "date_longblob": "longtext",
449
- "date_blob": "text",
450
- "date_tinytext": "text",
451
- "date_mediumtext": "text",
452
- "date_longtext": "longtext",
453
- "date_text": "text",
454
- "date_varbinary": "varbinary",
455
- "date_binary": "binary",
456
- "date_char": "binary",
457
- "date_geometry": "varbinary",
458
- "time_datetime": "datetime",
459
- "time_year": "varchar",
460
- "time_varchar": "varchar",
461
- "time_bit": "varbinary",
462
- "time_json": "varbinary",
463
- "time_enum": "varchar",
464
- "time_set": "varchar",
465
- "time_tinyblob": "text",
466
- "time_mediumblob": "text",
467
- "time_longblob": "longtext",
468
- "time_blob": "text",
469
- "time_tinytext": "text",
470
- "time_mediumtext": "text",
471
- "time_longtext": "longtext",
472
- "time_text": "text",
473
- "time_varbinary": "varbinary",
474
- "time_binary": "binary",
475
- "time_char": "binary",
476
- "time_geometry": "varbinary",
477
- "datetime_year": "varchar",
478
- "datetime_varchar": "varchar",
479
- "datetime_bit": "varbinary",
480
- "datetime_json": "varbinary",
481
- "datetime_enum": "varchar",
482
- "datetime_set": "varchar",
483
- "datetime_tinyblob": "text",
484
- "datetime_mediumblob": "text",
485
- "datetime_longblob": "longtext",
486
- "datetime_blob": "text",
487
- "datetime_tinytext": "text",
488
- "datetime_mediumtext": "text",
489
- "datetime_longtext": "longtext",
490
- "datetime_text": "text",
491
- "datetime_varbinary": "varbinary",
492
- "datetime_binary": "binary",
493
- "datetime_char": "binary",
494
- "datetime_geometry": "varbinary",
495
- "year_varchar": "varchar",
496
- "year_bit": "bigint",
497
- "year_json": "varbinary",
498
- "year_enum": "varchar",
499
- "year_set": "varchar",
500
- "year_tinyblob": "text",
501
- "year_mediumblob": "text",
502
- "year_longblob": "longtext",
503
- "year_blob": "text",
504
- "year_tinytext": "text",
505
- "year_mediumtext": "text",
506
- "year_longtext": "longtext",
507
- "year_text": "text",
508
- "year_varbinary": "varbinary",
509
- "year_binary": "binary",
510
- "year_char": "binary",
511
- "year_geometry": "varbinary",
512
- "varchar_bit": "varbinary",
513
- "varchar_json": "varbinary",
514
- "varchar_enum": "varchar",
515
- "varchar_set": "varchar",
516
- "varchar_tinyblob": "text",
517
- "varchar_mediumblob": "text",
518
- "varchar_longblob": "longtext",
519
- "varchar_blob": "text",
520
- "varchar_tinytext": "text",
521
- "varchar_mediumtext": "text",
522
- "varchar_longtext": "longtext",
523
- "varchar_text": "text",
524
- "varchar_varbinary": "varbinary",
525
- "varchar_binary": "varbinary",
526
- "varchar_char": "varchar",
527
- "varchar_geometry": "varbinary",
528
- "bit_json": "varbinary",
529
- "bit_enum": "varbinary",
530
- "bit_set": "varbinary",
531
- "bit_tinyblob": "text",
532
- "bit_mediumblob": "text",
533
- "bit_longblob": "longtext",
534
- "bit_blob": "text",
535
- "bit_tinytext": "tinytext",
536
- "bit_mediumtext": "mediumtext",
537
- "bit_longtext": "longtext",
538
- "bit_text": "text",
539
- "bit_varbinary": "varbinary",
540
- "bit_binary": "binary",
541
- "bit_char": "binary",
542
- "bit_geometry": "varbinary",
543
- "json_enum": "varbinary",
544
- "json_set": "varbinary",
545
- "json_tinyblob": "longtext",
546
- "json_mediumblob": "longtext",
547
- "json_longblob": "longtext",
548
- "json_blob": "longtext",
549
- "json_tinytext": "longtext",
550
- "json_mediumtext": "longtext",
551
- "json_longtext": "longtext",
552
- "json_text": "longtext",
553
- "json_varbinary": "varbinary",
554
- "json_binary": "varbinary",
555
- "json_char": "varbinary",
556
- "json_geometry": "varbinary",
557
- "enum_set": "varchar",
558
- "enum_tinyblob": "text",
559
- "enum_mediumblob": "text",
560
- "enum_longblob": "longtext",
561
- "enum_blob": "text",
562
- "enum_tinytext": "text",
563
- "enum_mediumtext": "text",
564
- "enum_longtext": "longtext",
565
- "enum_text": "text",
566
- "enum_varbinary": "varbinary",
567
- "enum_binary": "binary",
568
- "enum_char": "binary",
569
- "enum_geometry": "varbinary",
570
- "set_tinyblob": "text",
571
- "set_mediumblob": "text",
572
- "set_longblob": "longtext",
573
- "set_blob": "text",
574
- "set_tinytext": "text",
575
- "set_mediumtext": "text",
576
- "set_longtext": "longtext",
577
- "set_text": "text",
578
- "set_varbinary": "varbinary",
579
- "set_binary": "binary",
580
- "set_char": "binary",
581
- "set_geometry": "varbinary",
582
- "tinyblob_mediumblob": "text",
583
- "tinyblob_longblob": "longtext",
584
- "tinyblob_blob": "text",
585
- "tinyblob_tinytext": "tinytext",
586
- "tinyblob_mediumtext": "mediumtext",
587
- "tinyblob_longtext": "longtext",
588
- "tinyblob_text": "text",
589
- "tinyblob_varbinary": "text",
590
- "tinyblob_binary": "text",
591
- "tinyblob_char": "text",
592
- "tinyblob_geometry": "longtext",
593
- "mediumblob_longblob": "longtext",
594
- "mediumblob_blob": "text",
595
- "mediumblob_tinytext": "text",
596
- "mediumblob_mediumtext": "mediumtext",
597
- "mediumblob_longtext": "longtext",
598
- "mediumblob_text": "text",
599
- "mediumblob_varbinary": "text",
600
- "mediumblob_binary": "text",
601
- "mediumblob_char": "text",
602
- "mediumblob_geometry": "longtext",
603
- "longblob_blob": "longtext",
604
- "longblob_tinytext": "longtext",
605
- "longblob_mediumtext": "longtext",
606
- "longblob_longtext": "longtext",
607
- "longblob_text": "longtext",
608
- "longblob_varbinary": "longtext",
609
- "longblob_binary": "longtext",
610
- "longblob_char": "longtext",
611
- "longblob_geometry": "longtext",
612
- "blob_tinytext": "text",
613
- "blob_mediumtext": "mediumtext",
614
- "blob_longtext": "longtext",
615
- "blob_text": "text",
616
- "blob_varbinary": "text",
617
- "blob_binary": "text",
618
- "blob_char": "text",
619
- "blob_geometry": "longtext",
620
- "tinytext_mediumtext": "text",
621
- "tinytext_longtext": "longtext",
622
- "tinytext_text": "text",
623
- "tinytext_varbinary": "tinytext",
624
- "tinytext_binary": "tinytext",
625
- "tinytext_char": "text",
626
- "tinytext_geometry": "longtext",
627
- "mediumtext_longtext": "longtext",
628
- "mediumtext_text": "text",
629
- "mediumtext_varbinary": "mediumtext",
630
- "mediumtext_binary": "mediumtext",
631
- "mediumtext_char": "text",
632
- "mediumtext_geometry": "longtext",
633
- "longtext_text": "longtext",
634
- "longtext_varbinary": "longtext",
635
- "longtext_binary": "longtext",
636
- "longtext_char": "longtext",
637
- "longtext_geometry": "longtext",
638
- "text_varbinary": "text",
639
- "text_binary": "text",
640
- "text_char": "text",
641
- "text_geometry": "longtext",
642
- "varbinary_binary": "varbinary",
643
- "varbinary_char": "varbinary",
644
- "varbinary_geometry": "varbinary",
645
- "binary_char": "binary",
646
- "binary_geometry": "varbinary",
647
- "char_geometry": "varbinary"
208
+ number_int: 'int',
209
+ bigint_number: 'bigint',
210
+ decimal_tinyint: 'decimal',
211
+ decimal_smallint: 'decimal',
212
+ decimal_int: 'decimal',
213
+ decimal_float: 'double',
214
+ decimal_double: 'double',
215
+ decimal_timestamp: 'varchar',
216
+ decimal_bigint: 'decimal',
217
+ decimal_mediumint: 'decimal',
218
+ decimal_date: 'varchar',
219
+ decimal_time: 'varchar',
220
+ decimal_datetime: 'varchar',
221
+ decimal_year: 'decimal',
222
+ decimal_varchar: 'varchar',
223
+ decimal_bit: 'decimal',
224
+ decimal_json: 'varbinary',
225
+ decimal_enum: 'varchar',
226
+ decimal_set: 'varchar',
227
+ decimal_tinyblob: 'text',
228
+ decimal_mediumblob: 'text',
229
+ decimal_longblob: 'longtext',
230
+ decimal_blob: 'text',
231
+ decimal_tinytext: 'text',
232
+ decimal_mediumtext: 'text',
233
+ decimal_longtext: 'longtext',
234
+ decimal_text: 'text',
235
+ decimal_varbinary: 'varbinary',
236
+ decimal_binary: 'binary',
237
+ decimal_char: 'binary',
238
+ decimal_geometry: 'varbinary',
239
+ tinyint_smallint: 'smallint',
240
+ tinyint_int: 'int',
241
+ tinyint_float: 'float',
242
+ tinyint_double: 'double',
243
+ tinyint_timestamp: 'varchar',
244
+ tinyint_bigint: 'bigint',
245
+ tinyint_mediumint: 'mediumint',
246
+ tinyint_date: 'varchar',
247
+ tinyint_time: 'varchar',
248
+ tinyint_datetime: 'varchar',
249
+ tinyint_year: 'tinyint',
250
+ tinyint_varchar: 'varchar',
251
+ tinyint_bit: 'decimal',
252
+ tinyint_json: 'varbinary',
253
+ tinyint_enum: 'varchar',
254
+ tinyint_set: 'varchar',
255
+ tinyint_tinyblob: 'text',
256
+ tinyint_mediumblob: 'text',
257
+ tinyint_longblob: 'longtext',
258
+ tinyint_blob: 'text',
259
+ tinyint_tinytext: 'text',
260
+ tinyint_mediumtext: 'text',
261
+ tinyint_longtext: 'longtext',
262
+ tinyint_text: 'text',
263
+ tinyint_varbinary: 'varbinary',
264
+ tinyint_binary: 'binary',
265
+ tinyint_char: 'binary',
266
+ tinyint_geometry: 'varbinary',
267
+ smallint_int: 'int',
268
+ smallint_float: 'float',
269
+ smallint_double: 'double',
270
+ smallint_timestamp: 'varchar',
271
+ smallint_bigint: 'bigint',
272
+ smallint_mediumint: 'mediumint',
273
+ smallint_date: 'varchar',
274
+ smallint_time: 'varchar',
275
+ smallint_datetime: 'varchar',
276
+ smallint_year: 'smallint',
277
+ smallint_varchar: 'varchar',
278
+ smallint_bit: 'decimal',
279
+ smallint_json: 'varbinary',
280
+ smallint_enum: 'varchar',
281
+ smallint_set: 'varchar',
282
+ smallint_tinyblob: 'text',
283
+ smallint_mediumblob: 'text',
284
+ smallint_longblob: 'longtext',
285
+ smallint_blob: 'text',
286
+ smallint_tinytext: 'text',
287
+ smallint_mediumtext: 'text',
288
+ smallint_longtext: 'longtext',
289
+ smallint_text: 'text',
290
+ smallint_varbinary: 'varbinary',
291
+ smallint_binary: 'binary',
292
+ smallint_char: 'binary',
293
+ smallint_geometry: 'varbinary',
294
+ int_float: 'double',
295
+ int_double: 'double',
296
+ int_timestamp: 'varchar',
297
+ int_bigint: 'bigint',
298
+ int_mediumint: 'int',
299
+ int_date: 'varchar',
300
+ int_time: 'varchar',
301
+ int_datetime: 'varchar',
302
+ int_year: 'int',
303
+ int_varchar: 'varchar',
304
+ int_bit: 'decimal',
305
+ int_json: 'varbinary',
306
+ int_enum: 'varchar',
307
+ int_set: 'varchar',
308
+ int_tinyblob: 'text',
309
+ int_mediumblob: 'text',
310
+ int_longblob: 'longtext',
311
+ int_blob: 'text',
312
+ int_tinytext: 'text',
313
+ int_mediumtext: 'text',
314
+ int_longtext: 'longtext',
315
+ int_text: 'text',
316
+ int_varbinary: 'varbinary',
317
+ int_binary: 'binary',
318
+ int_char: 'binary',
319
+ int_geometry: 'varbinary',
320
+ float_double: 'double',
321
+ float_timestamp: 'varchar',
322
+ float_bigint: 'float',
323
+ float_mediumint: 'float',
324
+ float_date: 'varchar',
325
+ float_time: 'varchar',
326
+ float_datetime: 'varchar',
327
+ float_year: 'float',
328
+ float_varchar: 'varchar',
329
+ float_bit: 'double',
330
+ float_json: 'varbinary',
331
+ float_enum: 'varchar',
332
+ float_set: 'varchar',
333
+ float_tinyblob: 'text',
334
+ float_mediumblob: 'text',
335
+ float_longblob: 'longtext',
336
+ float_blob: 'text',
337
+ float_tinytext: 'text',
338
+ float_mediumtext: 'text',
339
+ float_longtext: 'longtext',
340
+ float_text: 'text',
341
+ float_varbinary: 'varbinary',
342
+ float_binary: 'binary',
343
+ float_char: 'binary',
344
+ float_geometry: 'varbinary',
345
+ double_timestamp: 'varchar',
346
+ double_bigint: 'double',
347
+ double_mediumint: 'double',
348
+ double_date: 'varchar',
349
+ double_time: 'varchar',
350
+ double_datetime: 'varchar',
351
+ double_year: 'double',
352
+ double_varchar: 'varchar',
353
+ double_bit: 'double',
354
+ double_json: 'varbinary',
355
+ double_enum: 'varchar',
356
+ double_set: 'varchar',
357
+ double_tinyblob: 'text',
358
+ double_mediumblob: 'text',
359
+ double_longblob: 'longtext',
360
+ double_blob: 'text',
361
+ double_tinytext: 'text',
362
+ double_mediumtext: 'text',
363
+ double_longtext: 'longtext',
364
+ double_text: 'text',
365
+ double_varbinary: 'varbinary',
366
+ double_binary: 'binary',
367
+ double_char: 'binary',
368
+ double_geometry: 'varbinary',
369
+ timestamp_bigint: 'varchar',
370
+ timestamp_mediumint: 'varchar',
371
+ timestamp_date: 'datetime',
372
+ timestamp_time: 'datetime',
373
+ timestamp_datetime: 'datetime',
374
+ timestamp_year: 'varchar',
375
+ timestamp_varchar: 'varchar',
376
+ timestamp_bit: 'varbinary',
377
+ timestamp_json: 'varbinary',
378
+ timestamp_enum: 'varchar',
379
+ timestamp_set: 'varchar',
380
+ timestamp_tinyblob: 'text',
381
+ timestamp_mediumblob: 'text',
382
+ timestamp_longblob: 'longtext',
383
+ timestamp_blob: 'text',
384
+ timestamp_tinytext: 'text',
385
+ timestamp_mediumtext: 'text',
386
+ timestamp_longtext: 'longtext',
387
+ timestamp_text: 'text',
388
+ timestamp_varbinary: 'varbinary',
389
+ timestamp_binary: 'binary',
390
+ timestamp_char: 'binary',
391
+ timestamp_geometry: 'varbinary',
392
+ bigint_mediumint: 'bigint',
393
+ bigint_date: 'varchar',
394
+ bigint_time: 'varchar',
395
+ bigint_datetime: 'varchar',
396
+ bigint_year: 'bigint',
397
+ bigint_varchar: 'varchar',
398
+ bigint_bit: 'decimal',
399
+ bigint_json: 'varbinary',
400
+ bigint_enum: 'varchar',
401
+ bigint_set: 'varchar',
402
+ bigint_tinyblob: 'text',
403
+ bigint_mediumblob: 'text',
404
+ bigint_longblob: 'longtext',
405
+ bigint_blob: 'text',
406
+ bigint_tinytext: 'text',
407
+ bigint_mediumtext: 'text',
408
+ bigint_longtext: 'longtext',
409
+ bigint_text: 'text',
410
+ bigint_varbinary: 'varbinary',
411
+ bigint_binary: 'binary',
412
+ bigint_char: 'binary',
413
+ bigint_geometry: 'varbinary',
414
+ mediumint_date: 'varchar',
415
+ mediumint_time: 'varchar',
416
+ mediumint_datetime: 'varchar',
417
+ mediumint_year: 'mediumint',
418
+ mediumint_varchar: 'varchar',
419
+ mediumint_bit: 'decimal',
420
+ mediumint_json: 'varbinary',
421
+ mediumint_enum: 'varchar',
422
+ mediumint_set: 'varchar',
423
+ mediumint_tinyblob: 'text',
424
+ mediumint_mediumblob: 'text',
425
+ mediumint_longblob: 'longtext',
426
+ mediumint_blob: 'text',
427
+ mediumint_tinytext: 'text',
428
+ mediumint_mediumtext: 'text',
429
+ mediumint_longtext: 'longtext',
430
+ mediumint_text: 'text',
431
+ mediumint_varbinary: 'varbinary',
432
+ mediumint_binary: 'binary',
433
+ mediumint_char: 'binary',
434
+ mediumint_geometry: 'varbinary',
435
+ date_time: 'datetime',
436
+ date_datetime: 'datetime',
437
+ date_year: 'varchar',
438
+ date_varchar: 'varchar',
439
+ date_bit: 'varbinary',
440
+ date_json: 'varbinary',
441
+ date_enum: 'varchar',
442
+ date_set: 'varchar',
443
+ date_tinyblob: 'text',
444
+ date_mediumblob: 'text',
445
+ date_longblob: 'longtext',
446
+ date_blob: 'text',
447
+ date_tinytext: 'text',
448
+ date_mediumtext: 'text',
449
+ date_longtext: 'longtext',
450
+ date_text: 'text',
451
+ date_varbinary: 'varbinary',
452
+ date_binary: 'binary',
453
+ date_char: 'binary',
454
+ date_geometry: 'varbinary',
455
+ time_datetime: 'datetime',
456
+ time_year: 'varchar',
457
+ time_varchar: 'varchar',
458
+ time_bit: 'varbinary',
459
+ time_json: 'varbinary',
460
+ time_enum: 'varchar',
461
+ time_set: 'varchar',
462
+ time_tinyblob: 'text',
463
+ time_mediumblob: 'text',
464
+ time_longblob: 'longtext',
465
+ time_blob: 'text',
466
+ time_tinytext: 'text',
467
+ time_mediumtext: 'text',
468
+ time_longtext: 'longtext',
469
+ time_text: 'text',
470
+ time_varbinary: 'varbinary',
471
+ time_binary: 'binary',
472
+ time_char: 'binary',
473
+ time_geometry: 'varbinary',
474
+ datetime_year: 'varchar',
475
+ datetime_varchar: 'varchar',
476
+ datetime_bit: 'varbinary',
477
+ datetime_json: 'varbinary',
478
+ datetime_enum: 'varchar',
479
+ datetime_set: 'varchar',
480
+ datetime_tinyblob: 'text',
481
+ datetime_mediumblob: 'text',
482
+ datetime_longblob: 'longtext',
483
+ datetime_blob: 'text',
484
+ datetime_tinytext: 'text',
485
+ datetime_mediumtext: 'text',
486
+ datetime_longtext: 'longtext',
487
+ datetime_text: 'text',
488
+ datetime_varbinary: 'varbinary',
489
+ datetime_binary: 'binary',
490
+ datetime_char: 'binary',
491
+ datetime_geometry: 'varbinary',
492
+ year_varchar: 'varchar',
493
+ year_bit: 'bigint',
494
+ year_json: 'varbinary',
495
+ year_enum: 'varchar',
496
+ year_set: 'varchar',
497
+ year_tinyblob: 'text',
498
+ year_mediumblob: 'text',
499
+ year_longblob: 'longtext',
500
+ year_blob: 'text',
501
+ year_tinytext: 'text',
502
+ year_mediumtext: 'text',
503
+ year_longtext: 'longtext',
504
+ year_text: 'text',
505
+ year_varbinary: 'varbinary',
506
+ year_binary: 'binary',
507
+ year_char: 'binary',
508
+ year_geometry: 'varbinary',
509
+ varchar_bit: 'varbinary',
510
+ varchar_json: 'varbinary',
511
+ varchar_enum: 'varchar',
512
+ varchar_set: 'varchar',
513
+ varchar_tinyblob: 'text',
514
+ varchar_mediumblob: 'text',
515
+ varchar_longblob: 'longtext',
516
+ varchar_blob: 'text',
517
+ varchar_tinytext: 'text',
518
+ varchar_mediumtext: 'text',
519
+ varchar_longtext: 'longtext',
520
+ varchar_text: 'text',
521
+ varchar_varbinary: 'varbinary',
522
+ varchar_binary: 'varbinary',
523
+ varchar_char: 'varchar',
524
+ varchar_geometry: 'varbinary',
525
+ bit_json: 'varbinary',
526
+ bit_enum: 'varbinary',
527
+ bit_set: 'varbinary',
528
+ bit_tinyblob: 'text',
529
+ bit_mediumblob: 'text',
530
+ bit_longblob: 'longtext',
531
+ bit_blob: 'text',
532
+ bit_tinytext: 'tinytext',
533
+ bit_mediumtext: 'mediumtext',
534
+ bit_longtext: 'longtext',
535
+ bit_text: 'text',
536
+ bit_varbinary: 'varbinary',
537
+ bit_binary: 'binary',
538
+ bit_char: 'binary',
539
+ bit_geometry: 'varbinary',
540
+ json_enum: 'varbinary',
541
+ json_set: 'varbinary',
542
+ json_tinyblob: 'longtext',
543
+ json_mediumblob: 'longtext',
544
+ json_longblob: 'longtext',
545
+ json_blob: 'longtext',
546
+ json_tinytext: 'longtext',
547
+ json_mediumtext: 'longtext',
548
+ json_longtext: 'longtext',
549
+ json_text: 'longtext',
550
+ json_varbinary: 'varbinary',
551
+ json_binary: 'varbinary',
552
+ json_char: 'varbinary',
553
+ json_geometry: 'varbinary',
554
+ enum_set: 'varchar',
555
+ enum_tinyblob: 'text',
556
+ enum_mediumblob: 'text',
557
+ enum_longblob: 'longtext',
558
+ enum_blob: 'text',
559
+ enum_tinytext: 'text',
560
+ enum_mediumtext: 'text',
561
+ enum_longtext: 'longtext',
562
+ enum_text: 'text',
563
+ enum_varbinary: 'varbinary',
564
+ enum_binary: 'binary',
565
+ enum_char: 'binary',
566
+ enum_geometry: 'varbinary',
567
+ set_tinyblob: 'text',
568
+ set_mediumblob: 'text',
569
+ set_longblob: 'longtext',
570
+ set_blob: 'text',
571
+ set_tinytext: 'text',
572
+ set_mediumtext: 'text',
573
+ set_longtext: 'longtext',
574
+ set_text: 'text',
575
+ set_varbinary: 'varbinary',
576
+ set_binary: 'binary',
577
+ set_char: 'binary',
578
+ set_geometry: 'varbinary',
579
+ tinyblob_mediumblob: 'text',
580
+ tinyblob_longblob: 'longtext',
581
+ tinyblob_blob: 'text',
582
+ tinyblob_tinytext: 'tinytext',
583
+ tinyblob_mediumtext: 'mediumtext',
584
+ tinyblob_longtext: 'longtext',
585
+ tinyblob_text: 'text',
586
+ tinyblob_varbinary: 'text',
587
+ tinyblob_binary: 'text',
588
+ tinyblob_char: 'text',
589
+ tinyblob_geometry: 'longtext',
590
+ mediumblob_longblob: 'longtext',
591
+ mediumblob_blob: 'text',
592
+ mediumblob_tinytext: 'text',
593
+ mediumblob_mediumtext: 'mediumtext',
594
+ mediumblob_longtext: 'longtext',
595
+ mediumblob_text: 'text',
596
+ mediumblob_varbinary: 'text',
597
+ mediumblob_binary: 'text',
598
+ mediumblob_char: 'text',
599
+ mediumblob_geometry: 'longtext',
600
+ longblob_blob: 'longtext',
601
+ longblob_tinytext: 'longtext',
602
+ longblob_mediumtext: 'longtext',
603
+ longblob_longtext: 'longtext',
604
+ longblob_text: 'longtext',
605
+ longblob_varbinary: 'longtext',
606
+ longblob_binary: 'longtext',
607
+ longblob_char: 'longtext',
608
+ longblob_geometry: 'longtext',
609
+ blob_tinytext: 'text',
610
+ blob_mediumtext: 'mediumtext',
611
+ blob_longtext: 'longtext',
612
+ blob_text: 'text',
613
+ blob_varbinary: 'text',
614
+ blob_binary: 'text',
615
+ blob_char: 'text',
616
+ blob_geometry: 'longtext',
617
+ tinytext_mediumtext: 'text',
618
+ tinytext_longtext: 'longtext',
619
+ tinytext_text: 'text',
620
+ tinytext_varbinary: 'tinytext',
621
+ tinytext_binary: 'tinytext',
622
+ tinytext_char: 'text',
623
+ tinytext_geometry: 'longtext',
624
+ mediumtext_longtext: 'longtext',
625
+ mediumtext_text: 'text',
626
+ mediumtext_varbinary: 'mediumtext',
627
+ mediumtext_binary: 'mediumtext',
628
+ mediumtext_char: 'text',
629
+ mediumtext_geometry: 'longtext',
630
+ longtext_text: 'longtext',
631
+ longtext_varbinary: 'longtext',
632
+ longtext_binary: 'longtext',
633
+ longtext_char: 'longtext',
634
+ longtext_geometry: 'longtext',
635
+ text_varbinary: 'text',
636
+ text_binary: 'text',
637
+ text_char: 'text',
638
+ text_geometry: 'longtext',
639
+ varbinary_binary: 'varbinary',
640
+ varbinary_char: 'varbinary',
641
+ varbinary_geometry: 'varbinary',
642
+ binary_char: 'binary',
643
+ binary_geometry: 'varbinary',
644
+ char_geometry: 'varbinary'
648
645
  };
649
- if (type1 == type2)
646
+ if (type1 === type2)
650
647
  return type1;
651
648
  //ex. tinyint_smallint or smallint_tinyint
652
649
  //@ts-ignore
653
- if (typeMapping[type1 + "_" + type2] == type1 || typeMapping[type2 + "_" + type1] == type1) {
650
+ const type1_type2 = typeMapping[`${type1}_${type2}`];
651
+ //@ts-ignore
652
+ const type2_type1 = typeMapping[`${type2}_${type1}`];
653
+ if (type1_type2 === type1 || type2_type1 === type1) {
654
654
  return type1;
655
655
  }
656
- //@ts-ignore
657
- if (typeMapping[type1 + "_" + type2] == type2 || typeMapping[type2 + "_" + type1] == type2) {
656
+ if (type1_type2 === type2 || type2_type1 === type2) {
658
657
  return type2;
659
658
  }
660
- throw Error("unionTypeResult:" + type1 + "_" + type2);
659
+ throw Error(`unionTypeResult:${type1}_${type2}`);
661
660
  }
662
- exports.unionTypeResult = unionTypeResult;
663
661
  //# sourceMappingURL=unify.js.map