diff --git a/src/components/layout/EditorToolbar.vue b/src/components/layout/EditorToolbar.vue index e4d2eea95c..78f82b8d67 100644 --- a/src/components/layout/EditorToolbar.vue +++ b/src/components/layout/EditorToolbar.vue @@ -24,6 +24,7 @@ import { useSchemaOptions } from "@/composables/useSchemaOptions"; import { connectionIconType } from "@/lib/connectionPresentation"; import { isDefaultDatabase } from "@/lib/defaultDatabase"; import { connectionDisplayName } from "@/lib/tabPresentation"; +import { isSingleDatabase } from "@/lib/databaseCapabilities"; import { hexToRgba } from "@/lib/color"; import type { QueryTab, ConnectionConfig } from "@/types/database"; @@ -60,16 +61,18 @@ const activeDatabaseOptions = computed(() => { const activeDatabaseValue = computed(() => props.activeTab.database || ""); const activeConnectionValue = computed(() => props.activeConnection?.id || ""); const activeSchemaValue = computed(() => props.activeTab.schema || ""); +const isSingleDb = computed(() => isSingleDatabase(props.activeConnection?.db_type)); +const schemaDatabaseKey = computed(() => props.activeTab.database || (isSingleDb.value ? "_" : "")); const showSchemaSelector = computed(() => { const connection = props.activeConnection; - return connection && isSchemaAware(connection.id) && props.activeTab.database; + return connection && isSchemaAware(connection.id) && (props.activeTab.database || isSingleDb.value); }); const activeSchemaOptions = computed(() => { const connection = props.activeConnection; if (!connection) return []; - return getSchemaOptionsForDb(connection.id, props.activeTab.database); + return getSchemaOptionsForDb(connection.id, schemaDatabaseKey.value); }); const isActiveDatabaseDefault = computed(() => isDefaultDatabase(props.activeConnection, activeDatabaseValue.value)); @@ -212,7 +215,7 @@ function databaseDisplayName(database: string): string { -
+