From e9538ee1dd8d3737a51046ca391b559fa53a651f Mon Sep 17 00:00:00 2001 From: onenewcode Date: Wed, 12 Aug 2026 12:36:14 +0800 Subject: [PATCH] fix(duckdb): support table rename --- apps/desktop/src/lib/table/objectRenameSql.ts | 2 +- crates/dbx-core/src/db_admin_sql.rs | 31 +++++++++++++++++-- 2 files changed, 30 insertions(+), 3 deletions(-) diff --git a/apps/desktop/src/lib/table/objectRenameSql.ts b/apps/desktop/src/lib/table/objectRenameSql.ts index 280c049067..60095d4060 100644 --- a/apps/desktop/src/lib/table/objectRenameSql.ts +++ b/apps/desktop/src/lib/table/objectRenameSql.ts @@ -21,7 +21,7 @@ export function supportsObjectRename(databaseType: DatabaseType | undefined, obj if (objectType === "PROCEDURE" || objectType === "FUNCTION") { return false; } - if (databaseType === "sqlite" || databaseType === "rqlite" || databaseType === "turso" || databaseType === "cloudflare-d1") return objectType === "TABLE"; + if (databaseType === "sqlite" || databaseType === "rqlite" || databaseType === "turso" || databaseType === "cloudflare-d1" || databaseType === "duckdb") return objectType === "TABLE"; if (databaseType === "mysql" || databaseType === "goldendb") return objectType === "TABLE" || objectType === "VIEW"; if (postgresLikeRenameTypes.has(databaseType)) return objectType === "TABLE" || objectType === "VIEW" || objectType === "MATERIALIZED_VIEW"; if (oracleLikeRenameTypes.has(databaseType)) return objectType === "TABLE" || objectType === "VIEW" || objectType === "MATERIALIZED_VIEW"; diff --git a/crates/dbx-core/src/db_admin_sql.rs b/crates/dbx-core/src/db_admin_sql.rs index 24fba51198..1170f41caa 100644 --- a/crates/dbx-core/src/db_admin_sql.rs +++ b/crates/dbx-core/src/db_admin_sql.rs @@ -685,7 +685,11 @@ pub fn supports_object_rename(database_type: Option, object_type: } if matches!( database_type, - DatabaseType::Sqlite | DatabaseType::Rqlite | DatabaseType::Turso | DatabaseType::CloudflareD1 + DatabaseType::Sqlite + | DatabaseType::Rqlite + | DatabaseType::Turso + | DatabaseType::CloudflareD1 + | DatabaseType::DuckDb ) { return object_type == DatabaseObjectType::Table; } @@ -729,7 +733,13 @@ pub fn build_rename_object_sql(options: RenameObjectSqlOptions) -> Result