@l-v-yonsama/multi-platform-database-drivers 0.1.9 → 0.1.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -0
- package/built/src/db/DBError.js +1 -4
- package/built/src/db/DBError.js.map +1 -1
- package/built/src/db/drivers/AwsS3Driver.js +128 -430
- package/built/src/db/drivers/AwsS3Driver.js.map +1 -1
- package/built/src/db/drivers/BaseDriver.js +72 -81
- package/built/src/db/drivers/BaseDriver.js.map +1 -1
- package/built/src/db/drivers/MySQLDriver.js +198 -198
- package/built/src/db/drivers/MySQLDriver.js.map +1 -1
- package/built/src/db/drivers/PostgresDriver.js +183 -199
- package/built/src/db/drivers/PostgresDriver.js.map +1 -1
- package/built/src/db/drivers/RedisDriver.js +178 -171
- package/built/src/db/drivers/RedisDriver.js.map +1 -1
- package/built/src/db/drivers/index.js +5 -8
- package/built/src/db/drivers/index.js.map +1 -1
- package/built/src/db/index.js +3 -6
- package/built/src/db/index.js.map +1 -1
- package/built/src/db/resource/DbResource.js +43 -77
- package/built/src/db/resource/DbResource.js.map +1 -1
- package/built/src/db/resource/MultipleResultSetDataHolder.js +5 -9
- package/built/src/db/resource/MultipleResultSetDataHolder.js.map +1 -1
- package/built/src/db/resource/ResourceHelper.js +1 -6
- package/built/src/db/resource/ResourceHelper.js.map +1 -1
- package/built/src/db/resource/ResultSetDataHolder.d.ts +0 -11
- package/built/src/db/resource/ResultSetDataHolder.js +33 -84
- package/built/src/db/resource/ResultSetDataHolder.js.map +1 -1
- package/built/src/db/resource/index.js +5 -8
- package/built/src/db/resource/index.js.map +1 -1
- package/built/src/db/resource/types/DBType.js +3 -6
- package/built/src/db/resource/types/DBType.js.map +1 -1
- package/built/src/db/resource/types/GeneralColumnType.js +5 -28
- package/built/src/db/resource/types/GeneralColumnType.js.map +1 -1
- package/built/src/db/resource/types/MySQLColumnType.js +7 -17
- package/built/src/db/resource/types/MySQLColumnType.js.map +1 -1
- package/built/src/db/resource/types/ODBCVendorType.js +2 -5
- package/built/src/db/resource/types/ODBCVendorType.js.map +1 -1
- package/built/src/db/resource/types/PostgresColumnType.js +6 -11
- package/built/src/db/resource/types/PostgresColumnType.js.map +1 -1
- package/built/src/db/resource/types/RedisKeyType.js +5 -8
- package/built/src/db/resource/types/RedisKeyType.js.map +1 -1
- package/built/src/db/resource/types/ResourceType.js +2 -5
- package/built/src/db/resource/types/ResourceType.js.map +1 -1
- package/built/src/db/resource/types/index.js +7 -10
- package/built/src/db/resource/types/index.js.map +1 -1
- package/built/src/index.js +3 -6
- package/built/src/index.js.map +1 -1
- package/built/src/service/DBAccessService.js +269 -256
- package/built/src/service/DBAccessService.js.map +1 -1
- package/built/src/service/DBDriverResolver.js +32 -48
- package/built/src/service/DBDriverResolver.js.map +1 -1
- package/built/src/service/SQLService.js +3 -11
- package/built/src/service/SQLService.js.map +1 -1
- package/built/src/service/index.js +5 -8
- package/built/src/service/index.js.map +1 -1
- package/built/src/service/request/RedisRequest.js +2 -5
- package/built/src/service/request/RedisRequest.js.map +1 -1
- package/built/src/service/request/S3Request.js +2 -5
- package/built/src/service/request/S3Request.js.map +1 -1
- package/built/src/service/request/index.d.ts +0 -2
- package/built/src/service/request/index.js +2 -5
- package/built/src/service/request/index.js.map +1 -1
- package/built/src/service/response/GeneralDBResponse.js +1 -2
- package/built/src/service/response/GeneralResponse.js +1 -5
- package/built/src/service/response/GeneralResponse.js.map +1 -1
- package/built/src/service/response/index.js +2 -5
- package/built/src/service/response/index.js.map +1 -1
- package/built/src/service/response/reply/ConnectionResult.js +1 -2
- package/built/src/service/response/reply/FileExportReply.js +4 -7
- package/built/src/service/response/reply/FileExportReply.js.map +1 -1
- package/built/src/service/response/reply/FileProcessResult.js +3 -6
- package/built/src/service/response/reply/FileProcessResult.js.map +1 -1
- package/built/src/service/response/reply/GeneralReply.js +1 -4
- package/built/src/service/response/reply/GeneralReply.js.map +1 -1
- package/built/src/service/response/reply/OutputReply.js +4 -7
- package/built/src/service/response/reply/OutputReply.js.map +1 -1
- package/built/src/service/response/reply/ProgressReply.js +2 -5
- package/built/src/service/response/reply/ProgressReply.js.map +1 -1
- package/built/src/service/response/reply/types/FileExportType.js +2 -5
- package/built/src/service/response/reply/types/FileExportType.js.map +1 -1
- package/built/src/service/response/reply/types/OutputType.js +2 -5
- package/built/src/service/response/reply/types/OutputType.js.map +1 -1
- package/built/src/service/response/reply/types/ReplyEventType.js +2 -5
- package/built/src/service/response/reply/types/ReplyEventType.js.map +1 -1
- package/built/src/types/DateModifiedType.js +3 -6
- package/built/src/types/DateModifiedType.js.map +1 -1
- package/built/src/types/FileKindType.js +3 -6
- package/built/src/types/FileKindType.js.map +1 -1
- package/built/src/types/index.js +2 -5
- package/built/src/types/index.js.map +1 -1
- package/package.json +11 -8
|
@@ -1,13 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
class MySQLDriver extends BaseDriver_1.default {
|
|
1
|
+
import { __awaiter } from "tslib";
|
|
2
|
+
import BaseDriver from './BaseDriver';
|
|
3
|
+
import * as mysql from 'mysql2/promise';
|
|
4
|
+
import ResultSetDataHolder, { RdhKey } from '../resource/ResultSetDataHolder';
|
|
5
|
+
import { DbDatabase, DbSchema, DbTable, DbColumn, } from '../resource/DbResource';
|
|
6
|
+
import { MySQLColumnType } from '../resource/types/MySQLColumnType';
|
|
7
|
+
import { EnumValues } from 'enum-values';
|
|
8
|
+
import { GeneralColumnType } from '../resource/types/GeneralColumnType';
|
|
9
|
+
export default class MySQLDriver extends BaseDriver {
|
|
11
10
|
constructor(conRes) {
|
|
12
11
|
super(conRes);
|
|
13
12
|
}
|
|
@@ -15,211 +14,210 @@ class MySQLDriver extends BaseDriver_1.default {
|
|
|
15
14
|
if (resolver) {
|
|
16
15
|
resolver.hints.list.push({ table: fieldInfo.orgTable });
|
|
17
16
|
}
|
|
18
|
-
const name =
|
|
19
|
-
const key = new
|
|
20
|
-
if (key.type ===
|
|
21
|
-
// log.error(LOG_PREFIX, 'Unknownt=', fieldInfo)
|
|
17
|
+
const name = EnumValues.getNameFromValue(MySQLColumnType, MySQLColumnType.parseByFieldInfo(fieldInfo));
|
|
18
|
+
const key = new RdhKey(fieldInfo.name, GeneralColumnType.parse(name), super.resolveColumnComment(fieldInfo.orgName, resolver));
|
|
19
|
+
if (key.type === GeneralColumnType.UNKNOWN) {
|
|
22
20
|
}
|
|
23
|
-
// console.log('key=', key, EnumValues.getNameFromValue(GeneralColumnType, key.type));
|
|
24
21
|
return key;
|
|
25
22
|
}
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
catch (e) {
|
|
42
|
-
errorMessage = e.message;
|
|
43
|
-
}
|
|
44
|
-
return errorMessage;
|
|
45
|
-
}
|
|
46
|
-
async test(with_connect = false) {
|
|
47
|
-
let errorReason = '';
|
|
48
|
-
if (with_connect) {
|
|
49
|
-
errorReason = await this.connect();
|
|
50
|
-
}
|
|
51
|
-
if (!errorReason) {
|
|
52
|
-
const rdh = await this.requestSql('SELECT 1 from DUAL');
|
|
53
|
-
if (rdh && rdh.errorMessage) {
|
|
54
|
-
return rdh.errorMessage;
|
|
23
|
+
connectSub() {
|
|
24
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
25
|
+
let errorMessage = '';
|
|
26
|
+
const options = {
|
|
27
|
+
connectionLimit: 4,
|
|
28
|
+
multipleStatements: true,
|
|
29
|
+
port: this.conRes.port,
|
|
30
|
+
host: this.conRes.host,
|
|
31
|
+
user: this.conRes.user,
|
|
32
|
+
password: this.conRes.password,
|
|
33
|
+
database: this.conRes.database,
|
|
34
|
+
};
|
|
35
|
+
this.client = mysql.createPool(options);
|
|
36
|
+
try {
|
|
37
|
+
errorMessage = yield this.test();
|
|
55
38
|
}
|
|
56
|
-
|
|
57
|
-
|
|
39
|
+
catch (e) {
|
|
40
|
+
errorMessage = e.message;
|
|
58
41
|
}
|
|
59
|
-
|
|
60
|
-
|
|
42
|
+
return errorMessage;
|
|
43
|
+
});
|
|
61
44
|
}
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
let binds = [];
|
|
68
|
-
if (options && options.binds) {
|
|
69
|
-
binds = options.binds;
|
|
70
|
-
}
|
|
71
|
-
let resolver;
|
|
72
|
-
if (options && options.needs_column_resolve === true) {
|
|
73
|
-
resolver = this.createColumnResolver(sql);
|
|
45
|
+
test(with_connect = false) {
|
|
46
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
47
|
+
let errorReason = '';
|
|
48
|
+
if (with_connect) {
|
|
49
|
+
errorReason = yield this.connect();
|
|
74
50
|
}
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
if (
|
|
78
|
-
|
|
79
|
-
// Ok Packet {
|
|
80
|
-
// fieldCount: 0,
|
|
81
|
-
// affectedRows: 1,
|
|
82
|
-
// insertId: 0,
|
|
83
|
-
// serverStatus: 2,
|
|
84
|
-
// warningCount: 0,
|
|
85
|
-
// message: '',
|
|
86
|
-
// protocol41: true,
|
|
87
|
-
// changedRows: 0 }
|
|
88
|
-
const results = rows;
|
|
89
|
-
rdh = new ResultSetDataHolder_1.default([
|
|
90
|
-
'fieldCount',
|
|
91
|
-
'affectedRows',
|
|
92
|
-
'insertId',
|
|
93
|
-
'serverStatus',
|
|
94
|
-
'warningStatus',
|
|
95
|
-
'changedRows',
|
|
96
|
-
]);
|
|
97
|
-
rdh.addRow({
|
|
98
|
-
fieldCount: results.fieldCount,
|
|
99
|
-
affectedRows: results.affectedRows,
|
|
100
|
-
insertId: results.insertId,
|
|
101
|
-
serverStatus: results.serverStatus,
|
|
102
|
-
warningStatus: results.warningStatus,
|
|
103
|
-
changedRows: results.changedRows,
|
|
104
|
-
});
|
|
51
|
+
if (!errorReason) {
|
|
52
|
+
const rdh = yield this.requestSql('SELECT 1 from DUAL');
|
|
53
|
+
if (rdh && rdh.errorMessage) {
|
|
54
|
+
return rdh.errorMessage;
|
|
105
55
|
}
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
? []
|
|
109
|
-
: fields.map((f) => this.fieldInfo2Key(f, resolver)));
|
|
110
|
-
rows.forEach((result) => {
|
|
111
|
-
rdh.addRow(result);
|
|
112
|
-
});
|
|
56
|
+
if (with_connect) {
|
|
57
|
+
yield this.disconnect();
|
|
113
58
|
}
|
|
114
59
|
}
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
else {
|
|
120
|
-
new Error('No connection');
|
|
121
|
-
}
|
|
122
|
-
return rdh;
|
|
60
|
+
return errorReason;
|
|
61
|
+
});
|
|
123
62
|
}
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
}
|
|
132
|
-
if (options && options.progress_callback) {
|
|
133
|
-
if (counter % 5 === 0) {
|
|
134
|
-
options.progress_callback(`Count ${prefix}${st.table}`, 70);
|
|
63
|
+
requestSql(sql, options) {
|
|
64
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
65
|
+
let rdh = new ResultSetDataHolder([]);
|
|
66
|
+
if (this.client) {
|
|
67
|
+
let binds = [];
|
|
68
|
+
if (options && options.binds) {
|
|
69
|
+
binds = options.binds;
|
|
135
70
|
}
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
71
|
+
let resolver;
|
|
72
|
+
if (options && options.needs_column_resolve === true) {
|
|
73
|
+
resolver = this.createColumnResolver(sql);
|
|
74
|
+
}
|
|
75
|
+
const [rows, fields] = yield this.client.execute(sql, binds);
|
|
76
|
+
try {
|
|
77
|
+
if (fields === undefined) {
|
|
78
|
+
const results = rows;
|
|
79
|
+
rdh = new ResultSetDataHolder([
|
|
80
|
+
'fieldCount',
|
|
81
|
+
'affectedRows',
|
|
82
|
+
'insertId',
|
|
83
|
+
'serverStatus',
|
|
84
|
+
'warningStatus',
|
|
85
|
+
'changedRows',
|
|
86
|
+
]);
|
|
87
|
+
rdh.addRow({
|
|
88
|
+
fieldCount: results.fieldCount,
|
|
89
|
+
affectedRows: results.affectedRows,
|
|
90
|
+
insertId: results.insertId,
|
|
91
|
+
serverStatus: results.serverStatus,
|
|
92
|
+
warningStatus: results.warningStatus,
|
|
93
|
+
changedRows: results.changedRows,
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
rdh = new ResultSetDataHolder(fields === undefined
|
|
98
|
+
? []
|
|
99
|
+
: fields.map((f) => this.fieldInfo2Key(f, resolver)));
|
|
100
|
+
rows.forEach((result) => {
|
|
101
|
+
rdh.addRow(result);
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
catch (err) {
|
|
106
|
+
rdh = ResultSetDataHolder.create(err);
|
|
144
107
|
}
|
|
145
108
|
}
|
|
146
|
-
|
|
147
|
-
|
|
109
|
+
else {
|
|
110
|
+
new Error('No connection');
|
|
148
111
|
}
|
|
149
|
-
|
|
150
|
-
}
|
|
151
|
-
return list;
|
|
112
|
+
return rdh;
|
|
113
|
+
});
|
|
152
114
|
}
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
115
|
+
countTables(tables, options) {
|
|
116
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
117
|
+
const list = new Array();
|
|
118
|
+
let counter = 1;
|
|
119
|
+
for (const st of tables.list) {
|
|
120
|
+
let prefix = '';
|
|
121
|
+
if (st.schema) {
|
|
122
|
+
prefix = st.schema + '.';
|
|
123
|
+
}
|
|
124
|
+
if (options && options.progress_callback) {
|
|
125
|
+
if (counter % 5 === 0) {
|
|
126
|
+
options.progress_callback(`Count ${prefix}${st.table}`, 70);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
const sql = `SELECT COUNT(*) as count FROM ${prefix}${st.table}`;
|
|
130
|
+
try {
|
|
131
|
+
const [results] = yield this.client.query(sql, []);
|
|
132
|
+
if (results && results.length > 0) {
|
|
133
|
+
const row = results[0];
|
|
134
|
+
const obj = Object.assign({ count: row.count }, st);
|
|
135
|
+
list.push(obj);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
catch (e) {
|
|
139
|
+
console.error(e);
|
|
140
|
+
}
|
|
141
|
+
counter++;
|
|
142
|
+
}
|
|
143
|
+
return list;
|
|
167
144
|
});
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
145
|
+
}
|
|
146
|
+
getInfomationSchemas(options) {
|
|
147
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
148
|
+
if (!this.conRes) {
|
|
149
|
+
return [];
|
|
150
|
+
}
|
|
151
|
+
const dbResources = new Array();
|
|
152
|
+
const dbDatabase = new DbDatabase(this.conRes.database);
|
|
153
|
+
dbResources.push(dbDatabase);
|
|
154
|
+
let progress = 10;
|
|
178
155
|
if (options.progress_callback) {
|
|
179
|
-
|
|
180
|
-
options.progress_callback(`${dbTables.length} Tables found in Schema[${dbSchema.getName()}].`, progress);
|
|
156
|
+
options.progress_callback(`${dbResources.length} Databases found.`, progress);
|
|
181
157
|
}
|
|
182
|
-
|
|
183
|
-
|
|
158
|
+
const dbSchemas = yield this.getSchemas(dbDatabase);
|
|
159
|
+
dbSchemas.forEach((res) => {
|
|
160
|
+
dbDatabase.addChild(res);
|
|
161
|
+
});
|
|
162
|
+
this.resetDefaultSchema(dbDatabase);
|
|
163
|
+
progress = 30;
|
|
184
164
|
if (options.progress_callback) {
|
|
185
|
-
|
|
186
|
-
options.progress_callback(`Commnets finding now... in Schema[${dbSchema.getName()}].`, progress);
|
|
165
|
+
options.progress_callback(`${dbSchemas.length} Schemas found.`, progress);
|
|
187
166
|
}
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
167
|
+
const incrPerSchema = Math.round(20 / dbSchemas.length);
|
|
168
|
+
for (const dbSchema of dbSchemas) {
|
|
169
|
+
const dbTables = yield this.getTables(dbSchema);
|
|
170
|
+
dbTables.forEach((res) => dbSchema.addChild(res));
|
|
171
|
+
if (options.progress_callback) {
|
|
172
|
+
progress += incrPerSchema;
|
|
173
|
+
options.progress_callback(`${dbTables.length} Tables found in Schema[${dbSchema.getName()}].`, progress);
|
|
174
|
+
}
|
|
191
175
|
}
|
|
192
|
-
|
|
193
|
-
|
|
176
|
+
for (const dbSchema of dbSchemas) {
|
|
177
|
+
if (options.progress_callback) {
|
|
178
|
+
progress += incrPerSchema;
|
|
179
|
+
options.progress_callback(`Commnets finding now... in Schema[${dbSchema.getName()}].`, progress);
|
|
180
|
+
}
|
|
181
|
+
for (const dbTable of dbSchema.getChildren()) {
|
|
182
|
+
const dbColumns = yield this.getColumns(dbTable);
|
|
183
|
+
dbColumns.forEach((res) => dbTable.addChild(res));
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
return dbResources;
|
|
187
|
+
});
|
|
194
188
|
}
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
189
|
+
getSchemas(dbDatabase) {
|
|
190
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
191
|
+
const rdh = yield this.requestSql(`SELECT SCHEMA_NAME AS name
|
|
198
192
|
FROM INFORMATION_SCHEMA.SCHEMATA
|
|
199
193
|
WHERE LOWER(SCHEMA_NAME) NOT IN ('information_schema', 'sys', 'performance_schema')
|
|
200
194
|
ORDER BY name`);
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
195
|
+
return rdh.rows.map((r) => {
|
|
196
|
+
const res = new DbSchema(r.values.name);
|
|
197
|
+
return res;
|
|
198
|
+
});
|
|
204
199
|
});
|
|
205
200
|
}
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
201
|
+
getTables(dbSchema) {
|
|
202
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
203
|
+
const rdh = yield this
|
|
204
|
+
.requestSql(`SELECT TABLE_NAME as name, CASE TABLE_TYPE
|
|
209
205
|
WHEN 'BASE TABLE' THEN 'TABLE'
|
|
210
206
|
WHEN 'SYSTEM VIEW' THEN 'VIEW'
|
|
211
207
|
ELSE 'TABLE' END AS table_type,
|
|
212
208
|
TABLE_COMMENT as comment
|
|
213
209
|
FROM INFORMATION_SCHEMA.TABLES
|
|
214
210
|
WHERE TABLE_SCHEMA = '${dbSchema.getName()}' `);
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
211
|
+
return rdh.rows.map((r) => {
|
|
212
|
+
const res = new DbTable(r.values.name, r.values.table_type, r.values.comment);
|
|
213
|
+
return res;
|
|
214
|
+
});
|
|
218
215
|
});
|
|
219
216
|
}
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
217
|
+
getColumns(dbTable) {
|
|
218
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
219
|
+
const binds = [dbTable.getParent().getName(), dbTable.getName()];
|
|
220
|
+
const rdh = yield this.requestSql(`SELECT COLUMN_NAME as name,
|
|
223
221
|
DATA_TYPE as col_type,
|
|
224
222
|
CASE WHEN IS_NULLABLE = 'YES' THEN 1 ELSE 0 END as nullable,
|
|
225
223
|
COLUMN_KEY as col_key,
|
|
@@ -228,28 +226,30 @@ class MySQLDriver extends BaseDriver_1.default {
|
|
|
228
226
|
COLUMN_COMMENT as comment
|
|
229
227
|
FROM INFORMATION_SCHEMA.COLUMNS
|
|
230
228
|
WHERE TABLE_SCHEMA = ? AND TABLE_NAME = ?`, { binds });
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
229
|
+
return rdh.rows.map((r) => {
|
|
230
|
+
const type_name = EnumValues.getNameFromValue(MySQLColumnType, MySQLColumnType.parse(r.values.col_type));
|
|
231
|
+
const res = new DbColumn(r.values.name, GeneralColumnType.parse(type_name), {
|
|
232
|
+
nullable: r.values.nullable === 1,
|
|
233
|
+
key: r.values.col_key,
|
|
234
|
+
default: r.values.col_default,
|
|
235
|
+
extra: r.values.col_extra,
|
|
236
|
+
}, r.values.comment);
|
|
237
|
+
return res;
|
|
238
|
+
});
|
|
240
239
|
});
|
|
241
240
|
}
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
241
|
+
closeSub() {
|
|
242
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
243
|
+
try {
|
|
244
|
+
if (this.client) {
|
|
245
|
+
yield this.client.end();
|
|
246
|
+
}
|
|
247
|
+
return '';
|
|
246
248
|
}
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
}
|
|
249
|
+
catch (e) {
|
|
250
|
+
return e.message;
|
|
251
|
+
}
|
|
252
|
+
});
|
|
252
253
|
}
|
|
253
254
|
}
|
|
254
|
-
exports.default = MySQLDriver;
|
|
255
255
|
//# sourceMappingURL=MySQLDriver.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MySQLDriver.js","sourceRoot":"","sources":["../../../../src/db/drivers/MySQLDriver.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"MySQLDriver.js","sourceRoot":"","sources":["../../../../src/db/drivers/MySQLDriver.ts"],"names":[],"mappings":"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"}
|