diff --git a/plugins/dbgate-plugin-clickhouse/src/backend/Analyser.js b/plugins/dbgate-plugin-clickhouse/src/backend/Analyser.js index 1cdf75a0a..2807ff9a1 100644 --- a/plugins/dbgate-plugin-clickhouse/src/backend/Analyser.js +++ b/plugins/dbgate-plugin-clickhouse/src/backend/Analyser.js @@ -24,8 +24,8 @@ class Analyser extends DatabaseAnalyser { primaryKeyColumns: undefined, sortingKeyColumns: undefined, columns: columns.rows.filter((col) => col.pureName == table.pureName), - primaryKey: (table.primaryKeyColumns || '').split(',').map((columnName) => ({ columnName })), - sortingKey: (table.sortingKeyColumns || '').split(',').map((columnName) => ({ columnName })), + primaryKey: { columns: (table.primaryKeyColumns || '').split(',').map((columnName) => ({ columnName })) }, + sortingKey: { columns: (table.sortingKeyColumns || '').split(',').map((columnName) => ({ columnName })) }, foreignKeys: [], })), }; diff --git a/plugins/dbgate-plugin-clickhouse/src/frontend/driver.js b/plugins/dbgate-plugin-clickhouse/src/frontend/driver.js index 6c0ef39ea..36ed6a5eb 100644 --- a/plugins/dbgate-plugin-clickhouse/src/frontend/driver.js +++ b/plugins/dbgate-plugin-clickhouse/src/frontend/driver.js @@ -6,11 +6,10 @@ const { mysqlSplitterOptions } = require('dbgate-query-splitter/lib/options'); const dialect = { limitSelect: true, rangeSelect: true, - offsetFetchRangeSyntax: true, stringEscapeChar: "'", - fallbackDataType: 'nvarchar(max)', + fallbackDataType: 'String', quoteIdentifier(s) { - return `[${s}]`; + return `"${s}"`; }, };