diff --git a/src/main/libs/clients/MySQLClient.js b/src/main/libs/clients/MySQLClient.js index f2e0286f..af70591c 100644 --- a/src/main/libs/clients/MySQLClient.js +++ b/src/main/libs/clients/MySQLClient.js @@ -197,8 +197,9 @@ export class MySQLClient extends AntaresCore { const remappedFields = fields ? fields.map(field => { return { name: field.name, - db: field.db, - table: field.orgTable + schema: field.db, + table: field.orgTable, + type: 'varchar' }; }) : []; diff --git a/src/renderer/components/WorkspaceQueryTab.vue b/src/renderer/components/WorkspaceQueryTab.vue index 7243da86..b0535176 100644 --- a/src/renderer/components/WorkspaceQueryTab.vue +++ b/src/renderer/components/WorkspaceQueryTab.vue @@ -103,7 +103,7 @@ export default { if (field.table) cachedTable = field.table;// Needed for some queries on information_schema return { table: field.table || cachedTable, - schema: field.db || 'INFORMATION_SCHEMA' + schema: field.schema || 'INFORMATION_SCHEMA' }; }).filter((val, i, arr) => arr.findIndex(el => el.schema === val.schema && el.table === val.table) === i); } @@ -162,7 +162,7 @@ export default { }); } - fieldsArr[qI] = fieldsArr[qI] ? [...fieldsArr[qI], ...fields] : fields.length ? fields : result.fields; + fieldsArr[qI] = fieldsArr[qI] ? [...fieldsArr[qI], ...fields] : fields.length >= result.fields.length ? fields : result.fields; } else this.addNotification({ status: 'error', message: response }); diff --git a/src/renderer/components/WorkspaceQueryTable.vue b/src/renderer/components/WorkspaceQueryTable.vue index 4651e709..9dfc4f7b 100644 --- a/src/renderer/components/WorkspaceQueryTable.vue +++ b/src/renderer/components/WorkspaceQueryTable.vue @@ -212,7 +212,7 @@ export default { }, getSchema (index) { if (this.resultsWithRows[index] && this.resultsWithRows[index].fields && this.resultsWithRows[index].fields.length) - return this.resultsWithRows[index].fields[0].db; + return this.resultsWithRows[index].fields[0].schema; return this.workspaceSchema; }, getPrimaryValue (row) { diff --git a/src/renderer/components/WorkspaceQueryTableRow.vue b/src/renderer/components/WorkspaceQueryTableRow.vue index 359ace5f..623836f5 100644 --- a/src/renderer/components/WorkspaceQueryTableRow.vue +++ b/src/renderer/components/WorkspaceQueryTableRow.vue @@ -254,6 +254,9 @@ export default { }, foreignKeys () { return this.keyUsage.map(key => key.column); + }, + isEditable () { + return this.fields ? !!(this.fields[0].schema && this.fields[0].table) : false; } }, watch: { @@ -296,6 +299,8 @@ export default { return bufferToBase64(val); }, editON (event, content, field) { + if (!this.isEditable) return; + const type = this.getFieldType(field); this.originalContent = content; this.editingType = type;