typesql-cli 0.9.5 → 0.10.0

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