ruby-on-rails – 使用Rails迁移删除索引而不知道其名称
发布时间:2020-12-17 04:30:36 所属栏目:百科 来源:网络整理
导读:我有一个表,其中的复合索引不是通过rails迁移创建的.现在,我需要创建一个rails迁移来删除这个索引并创建一个新索引,但我不一定知道索引的名称是什么. 我知道可以在迁移步骤中获取表名和列名列表.是否可以获取特定表上的索引名称列表?或者,从另一个角度来看,
我有一个表,其中的复合索引不是通过rails迁移创建的.现在,我需要创建一个rails迁移来删除这个索引并创建一个新索引,但我不一定知道索引的名称是什么.
我知道可以在迁移步骤中获取表名和列名列表.是否可以获取特定表上的索引名称列表?或者,从另一个角度来看,是否可以删除表上的所有索引?或者是编写我自己的特定于数据库的SQL查询来获取此信息的唯一选项? 解决方法
您可以通过以下方式获取表中所有索引的详细信息:
ActiveRecord::Base.connection.indexes('tablename') 这将返回一个ActiveRecord :: ConnectionAdapters :: IndexDefinition对象数组,每个对象都有一个#name和#columns方法. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |