diff --git a/packages/nodes-base/nodes/MySql/v2/actions/common.descriptions.ts b/packages/nodes-base/nodes/MySql/v2/actions/common.descriptions.ts index 67a1eda87eb5f..12f8ffd2427ef 100644 --- a/packages/nodes-base/nodes/MySql/v2/actions/common.descriptions.ts +++ b/packages/nodes-base/nodes/MySql/v2/actions/common.descriptions.ts @@ -134,6 +134,16 @@ export const optionsCollection: INodeProperties = { show: { '/operation': ['select', 'executeQuery'] }, }, }, + { + displayName: 'Output Decimals as Numbers', + name: 'decimalNumbers', + type: 'boolean', + default: false, + description: 'Whether to output DECIMAL types as numbers instead of strings', + displayOptions: { + show: { '/operation': ['select', 'executeQuery'] }, + }, + }, { displayName: 'Priority', name: 'priority', diff --git a/packages/nodes-base/nodes/MySql/v2/transport/index.ts b/packages/nodes-base/nodes/MySql/v2/transport/index.ts index cbb373a52436e..f9e50fcb8f6e2 100644 --- a/packages/nodes-base/nodes/MySql/v2/transport/index.ts +++ b/packages/nodes-base/nodes/MySql/v2/transport/index.ts @@ -24,6 +24,7 @@ export async function createPool( password: credentials.password, multipleStatements: true, supportBigNumbers: true, + decimalNumbers: false, }; if (credentials.ssl) { @@ -55,6 +56,10 @@ export async function createPool( connectionOptions.bigNumberStrings = true; } + if (options?.decimalNumbers === true) { + connectionOptions.decimalNumbers = true; + } + if (!credentials.sshTunnel) { return mysql2.createPool(connectionOptions); } else {