InxOption:TIndexIptions;{定义一个索引选项类变量}
Table.IndexDefs.Add("NUM","学号",InxOption);{增加一个索引索引名称为“NUM”,被索引字段为学号}

解决方案 »

  1.   

    上面的索引是不是真正索引?还是暂时的索引?
    退出来还是没有索引?能不能真正的索引(跟Database Desktop定义索引一样)
    能讲清楚吗?
      

  2.   

    谢谢
    Table.IndexDefs.Add("NUM","学号",InxOption);
    只要一句话就够吗?(我执行后没有反应,进入database desktop也没看到索引)
    还有其他必须的命令?
      

  3.   

    当然不是这一句我给你写一段程序(c++Builder)
    Table *Table1;             //定义一个TTable类变量Table1
    TIndexOptions InxOption;  //定义一个索引选项类变量
    Table=new TTable(this);
    Table1->Active=false;
    Table1->DatabaseName="练习";
    Table1->TableName="dbName.dbf";
    if(Table->Exists) Table->DeleteTable();//若数据库存在则删除数据库文件
    Table1->TableType=ttDBase;              //定义结构开始
    Table1->FieldDefs->Clear();
    Table1->FieldDefs->Add("姓名",ftString,8,true);
    Table1->FieldDefs->Add("学号",ftString,10,true);
    Table1->FieldDefs->Add("出生日期",ftDate,0,false);
    Table1->FieldDefs->Add("身高",ftFloat,0,false);//定义结构结束
    Table1->->IndexDefs->Clear();
    InxOption<<ixUnique<<ixDescending;//设置索引选项为唯一的、降序排列
    Table1->IndexDefs->Add("NUM","学号",InxOption);
    //增加一个索引索引名称为“NUM”,被索引字段为学号
    InxOption>>ixUnique;//删除唯一性选项
    Table1->IndexDefs->Add("NM","姓名",InOption);//增加一个“NM”索引……
    Table1->CreateTable();//创建数据库和索引这是创建数据库,并创建索引的全部过程bcb和delphi没有多大区别基本上把“-〉”改成“.”还有变量定义不一样。用SQL指令也可创建索引