我想禁用(以及稍后重建)HSQLDB中给定表的所有索引。我从SQL Server中了解这个功能,您可以在其中编写
ALTER INDEX ALL ON MyTable DISABLE;
禁用表的所有索引,然后使用
重建它们ALTER INDEX ALL ON MyTable REBUILD;
如果HSQLDB支持禁用和启用单个索引,我甚至不确定。
答案 0 :(得分:0)
我认为这确实不受支持。但是,您可以删除索引,然后再次创建它。 像这样:
DROP INDEX index [IF EXISTS];
ALTER TABLE MY_TABLE ADD INDEX MY_INDEX
请查看此doc以获取更多信息。
答案 1 :(得分:0)
HSQLDB没有此功能。
您可以执行SHUTDOWN COMPACT以在所有表上重新创建所有索引。