From 83ba530112d312719cbb4d794afe6131b6c9dce0 Mon Sep 17 00:00:00 2001 From: Jan Prochazka Date: Sat, 4 Feb 2023 15:58:45 +0100 Subject: [PATCH] explicit order criteria only on MSSQL #436 --- packages/datalib/src/GridDisplay.ts | 16 +++++++++------- packages/types/engines.d.ts | 1 + .../dbgate-plugin-mssql/src/frontend/driver.js | 1 + 3 files changed, 11 insertions(+), 7 deletions(-) diff --git a/packages/datalib/src/GridDisplay.ts b/packages/datalib/src/GridDisplay.ts index 678dc6d5c..02e6439ad 100644 --- a/packages/datalib/src/GridDisplay.ts +++ b/packages/datalib/src/GridDisplay.ts @@ -519,13 +519,15 @@ export abstract class GridDisplay { alias: 'basetbl', }, columns: columns.map(col => this.createColumnExpression(col, { alias: 'basetbl' })), - orderBy: [ - { - exprType: 'column', - columnName: orderColumnName, - direction: 'ASC', - }, - ], + orderBy: this.driver?.requiresDefaultSortCriteria + ? [ + { + exprType: 'column', + columnName: orderColumnName, + direction: 'ASC', + }, + ] + : null, }; const displayedColumnInfo = _.keyBy( this.columns.map(col => ({ ...col, sourceAlias: 'basetbl' })), diff --git a/packages/types/engines.d.ts b/packages/types/engines.d.ts index fac146b74..2c4e56104 100644 --- a/packages/types/engines.d.ts +++ b/packages/types/engines.d.ts @@ -78,6 +78,7 @@ export interface EngineDriver { supportsDatabaseDump?: boolean; supportsServerSummary?: boolean; supportsDatabaseProfiler?: boolean; + requiresDefaultSortCriteria?: boolean; profilerFormatterFunction?: string; profilerTimestampFunction?: string; profilerChartAggregateFunction?: string; diff --git a/plugins/dbgate-plugin-mssql/src/frontend/driver.js b/plugins/dbgate-plugin-mssql/src/frontend/driver.js index 7e13dfa4a..0976e5b01 100644 --- a/plugins/dbgate-plugin-mssql/src/frontend/driver.js +++ b/plugins/dbgate-plugin-mssql/src/frontend/driver.js @@ -114,6 +114,7 @@ const driver = { dumperClass: MsSqlDumper, dialect, readOnlySessions: false, + requiresDefaultSortCriteria: true, dialectByVersion(version) { if (version && version.productVersionNumber < 11) { return {