From 27188eb2c57ba3b747e8f9ee9b1f854cd69b9771 Mon Sep 17 00:00:00 2001 From: Nybkox Date: Tue, 3 Dec 2024 15:39:22 +0100 Subject: [PATCH] fix: normalize type name for mysql params --- .../dbgate-plugin-mysql/src/backend/Analyser.js | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/plugins/dbgate-plugin-mysql/src/backend/Analyser.js b/plugins/dbgate-plugin-mysql/src/backend/Analyser.js index 7f379d92f..0e4565568 100644 --- a/plugins/dbgate-plugin-mysql/src/backend/Analyser.js +++ b/plugins/dbgate-plugin-mysql/src/backend/Analyser.js @@ -15,6 +15,11 @@ function quoteDefaultValue(value) { return value; } +function normalizeTypeName(typeName) { + if (/int\(\d+\)/.test(typeName)) return 'int'; + return typeName; +} + function getColumnInfo( { isNullable, @@ -132,7 +137,10 @@ class Analyser extends DatabaseAnalyser { const functionNameToParameters = functionParameters.reduce((acc, row) => { if (!acc[`${row.schemaName}.${row.pureName}`]) acc[`${row.schemaName}.${row.pureName}`] = []; - acc[`${row.schemaName}.${row.pureName}`].push(row); + acc[`${row.schemaName}.${row.pureName}`].push({ + ...row, + dataType: normalizeTypeName(row.dataType), + }); return acc; }, {}); @@ -140,7 +148,10 @@ class Analyser extends DatabaseAnalyser { const procedureNameToParameters = procedureParameters.reduce((acc, row) => { if (!acc[`${row.schemaName}.${row.pureName}`]) acc[`${row.schemaName}.${row.pureName}`] = []; - acc[`${row.schemaName}.${row.pureName}`].push(row); + acc[`${row.schemaName}.${row.pureName}`].push({ + ...row, + dataType: normalizeTypeName(row.dataType), + }); return acc; }, {});