知
知秋
Unregistered / Unconfirmed
GUEST, unregistred user!
我想动态为一个Paradox的表创建索引,索引由三个字段构成。我在程序中用AddIndex函数作。发现设置为两个字段索引没有问题,当设置三个字段为索引时,函数出现问题。提示为“EBDEngineError:Number is out of range”,是不是Paradox表不支持三个字段联合作为索引的?另外,用SQL创建索引,语句可以执行,但得到Table->IndexFieldCount的属性总是为“0”。源代码如下,请高手指点!多谢!
Table->Active = true;
IndexField1 = Table->Fields->Fields[0]->FieldName;
IndexField2 = Table->Fields->Fields[1]->FieldName;
IndexField3 = Table->Fields->Fields[2]->FieldName;
IndexField = IndexField1 + ";" + IndexField2 + ";" + IndexField3;
Table->Active = false;
if(m_DesTable->IndexFieldCount == 0)
{
// 为目标表创建索引
Table->AddIndex("TableIndex", IndexField, TIndexOptions() << ixPrimary);
}
Table->Active = true;
IndexField1 = Table->Fields->Fields[0]->FieldName;
IndexField2 = Table->Fields->Fields[1]->FieldName;
IndexField3 = Table->Fields->Fields[2]->FieldName;
IndexField = IndexField1 + ";" + IndexField2 + ";" + IndexField3;
Table->Active = false;
if(m_DesTable->IndexFieldCount == 0)
{
// 为目标表创建索引
Table->AddIndex("TableIndex", IndexField, TIndexOptions() << ixPrimary);
}