2016-01-21 90 views
1

如何为Derby DB的Lquibase datamigration.xml文件中的一个索引分配两列。我已经使用了以下可以在oracle和MSSQL上正常工作的代码。但是derby正在创建两个具有相同索引名称的行。derby使用liquibase迁移数据

<createIndex indexName="idx_group_name" tableName="rights" unique="true"> 
      <column name="name"/> 
      <column name="group_name"/> 
     </createIndex> 
+0

上面的代码结果如下:oracle: - indexName = idx_group_name;列名称=名称,组名。但是,德比确实不同;它创建两个索引名称;如:indexName = idx_group_name;列名称= name和indexName = idx_group_name;列名=组名。如果你能帮助像甲骨文一样工作,我将不胜感激。我需要修复它,因为在数据迁移的下一步德比抱怨它有重复的索引名称。谢谢 –

+0

底层的Derby数据库可以处理多列索引(https://db.apache.org/derby/docs/10.12/ref/rrefsqlj20937.html),所以问题在于,由于某种原因liquibase没有生成单个多列索引。 –

+0

@BryanPendleton感谢您的意见。我认为应该有一些方法来解决它在liquibase中。任何人都可以提供见解吗?谢谢 –

回答

0

Derby DB在抱怨上传csv文件中的相同数据时。通过不从dbmigration.xml文件上载csv文件解决了问题。谢谢