如何使用liquibase创建复合索引?
这是我到目前为止所做的:
<createIndex indexName="idx_value"
tableName="test">
<column name="value"/>
</createIndex>
我有以下几点,但我只需要确认。
<createIndex indexName="idx_value"
tableName="test">
<column name="value0"/>
<column name="value1"/>
</createIndex>
答案 0 :(得分:18)
如果:
,我会感到惊讶<createIndex indexName="idx_value"
tableName="test">
<column name="value" type="varchar(255)"/>
<column name="othercolumn" type="varchar(255)"/>
</createIndex>
没有用......
答案 1 :(得分:2)
对我来说,该解决方案无效。它在字段上创建了单独的索引。
相反,我使用这种方法,用逗号分隔各列:
var Maths = new Subject();
var English = new Subject();
var Construction = new Subject();
var IT = new Subject();
Subject[] subjects = {null, Maths, English, Construction, IT};
int t = 1;
int c = 0;
while (t < 4)
{
if (Convert.ToInt32(Chart[c].Text) != 0)
{
if (c < 12)
{
c++;
}
Counter(subjects);
}
else
{
int m = random.Next(1, 4);
Chart[c].Text = Convert.ToString(m);
subject[m].Value--;
Chart[c].Refresh();
tbTotal--;
}
}
private void Counter(IEnumerable<Subject> subjects)
{
foreach(var s in subjects.Where(s => s is object))
{
if (s.Value == 0 && !s.Dirty)
{
s.Dirty = true;
t++;
{
}
}
在带quiquibase 3.5.5的MySQL 5.7上测试