fix(editor): 内置 SQL 补全模板按数据库方言适配
This commit is contained in:
1 parent
355ca7d3ad
commit
3939658ebe
7 files changed
+353
-133
No files matched your search
@@ -73,7 +73,7 @@ import { startsQueryEditorRectangularSelection } from "@/lib/editor/queryEditorP
|
||||
import { LARGE_PASTE_HISTORY_USER_EVENT, normalizeQueryEditorPasteText, recoverableNativePasteSuffix, shouldRecoverLargeTauriPaste } from "@/lib/editor/queryEditorLargePaste";
|
||||
import type { StatementExecutionMarker } from "@/lib/tabs/tabPresentation";
|
||||
import { isSchemaAware, isSingleDatabase, supportsDatabaseSchemaQualifier, supportsSqlInListPaste } from "@/lib/database/databaseFeatureSupport";
|
||||
import { metadataSchemaForConnection } from "@/lib/database/jdbcDialect";
|
||||
import { metadataSchemaForConnection, sqlSnippetDatabaseTypeForConnection } from "@/lib/database/jdbcDialect";
|
||||
import { usesLocalOnlyEditorCompletionMetadata, usesOnDemandOnlyEditorColumnMetadata } from "@/lib/metadata/completionMetadataPolicy";
|
||||
import { queryContextObjectActions, queryContextObjectRoute, queryTableCandidateAtSqlPosition, resolveQueryContextCandidateDatabase, resolveQueryContextObjectTarget, type QueryContextObjectAction } from "@/lib/sql/queryCursorTableTarget";
|
||||
import * as api from "@/lib/backend/api";
|
||||
@@ -158,6 +158,10 @@ const settingsStore = useSettingsStore();
|
||||
const { isDark, themePalette } = useTheme();
|
||||
const { t } = useI18n();
|
||||
const { toast } = useToast();
|
||||
const snippetDatabaseType = computed(() => {
|
||||
const connection = props.connectionId ? connectionStore.getConfig(props.connectionId) : undefined;
|
||||
return sqlSnippetDatabaseTypeForConnection(connection) ?? props.databaseType;
|
||||
});
|
||||
|
||||
const SQL_FUNCTION_NAMES = [
|
||||
"COUNT",
|
||||
@@ -2493,7 +2497,7 @@ async function provideSqlCompletions(context: CompletionContext) {
|
||||
translations: completionTranslations.value,
|
||||
snippets: settingsStore.editorSettings.snippets,
|
||||
dialect: props.dialect,
|
||||
databaseType: props.databaseType,
|
||||
databaseType: snippetDatabaseType.value,
|
||||
currentSchema: props.schema,
|
||||
keywordCase: settingsStore.editorSettings.sqlFormatter.keywordCase,
|
||||
autoAliasTables: settingsStore.editorSettings.autoAliasTables,
|
||||
@@ -2513,7 +2517,7 @@ async function provideSqlCompletions(context: CompletionContext) {
|
||||
translations: completionTranslations.value,
|
||||
snippets: settingsStore.editorSettings.snippets,
|
||||
dialect: props.dialect,
|
||||
databaseType: props.databaseType,
|
||||
databaseType: snippetDatabaseType.value,
|
||||
currentSchema: props.schema,
|
||||
keywordCase: settingsStore.editorSettings.sqlFormatter.keywordCase,
|
||||
autoAliasTables: settingsStore.editorSettings.autoAliasTables,
|
||||
@@ -2707,7 +2711,7 @@ function buildLocalSqlCompletionResult(completionContext: ReturnType<typeof getS
|
||||
translations: completionTranslations.value,
|
||||
snippets: settingsStore.editorSettings.snippets,
|
||||
dialect: props.dialect,
|
||||
databaseType: props.databaseType,
|
||||
databaseType: snippetDatabaseType.value,
|
||||
currentSchema: props.schema,
|
||||
keywordCase: settingsStore.editorSettings.sqlFormatter.keywordCase,
|
||||
autoAliasTables: settingsStore.editorSettings.autoAliasTables,
|
||||
@@ -3119,7 +3123,7 @@ async function performAsyncCompletionWithResult(epoch: number, completionContext
|
||||
translations: completionTranslations.value,
|
||||
snippets: settingsStore.editorSettings.snippets,
|
||||
dialect: props.dialect,
|
||||
databaseType: props.databaseType,
|
||||
databaseType: snippetDatabaseType.value,
|
||||
currentSchema: props.schema,
|
||||
keywordCase: settingsStore.editorSettings.sqlFormatter.keywordCase,
|
||||
autoAliasTables: settingsStore.editorSettings.autoAliasTables,
|
||||
|
||||
Reference in new issue
Block a user