diff --git a/sqlite_utils/db.py b/sqlite_utils/db.py index ed3fc7a..f582822 100644 --- a/sqlite_utils/db.py +++ b/sqlite_utils/db.py @@ -1892,6 +1892,7 @@ class Table(Queryable): dropped """ assert self.exists(), "Cannot transform a table that doesn't exist yet" + fts_table = self.detect_fts() sqls = self.transform_sql( types=types, rename=rename, @@ -1905,6 +1906,10 @@ class Table(Queryable): column_order=column_order, keep_table=keep_table, ) + if fts_table: + fts_columns = [c.name for c in self.db[fts_table].columns if c.name not in drop] + fts_columns_renamed = [renamed[c] if c in renamed else c for c in fts_columns] + self.enable_fts(fts_columns_renamed, replace=True) pragma_foreign_keys_was_on = self.db.execute("PRAGMA foreign_keys").fetchone()[ 0 ]