Значит слушай сюда....
Код ты конечно с хелпа стянул и по этому кое-что не получается (надо вдуплить для чего каждая строка)....
Но вот как делаю я:
TTable* dbftable = new TTable(Application);
dbftable->DatabaseName=/*сдесь алиас базы*/alias;
dbftable->TableName="EXCH_TMP.DBF";/*сдесь че хош*/
if (!dbftable->Exists)
{
dbftable->Active = false;
dbftable->TableType=ttDBase;/*сдесь пишеш свой тип*/
dbftable->FieldDefs->Clear();
dbftable->FieldDefs->Add("NOMKV", ftInteger, 0, False);
dbftable->FieldDefs->Add("TYP", ftInteger, 0, False);
dbftable->FieldDefs->Add("KODVAL", ftInteger, 0, False);
dbftable->FieldDefs->Add("SUM_EXCH", ftFloat, 0, False);
dbftable->FieldDefs->Add("SUM_EQUI", ftFloat, 0, False);
dbftable->FieldDefs->Add("KURS_OPER", ftFloat, 0, False);
dbftable->FieldDefs->Add("STATUS", ftInteger, 0, False);
dbftable->CreateTable();
}
dbftable->Active = true;
но это я делал в 4 билдере
в 5 делаю так:
TTable* Table1= new TTable(Application);
AnsiString * perviy;
AnsiString* vtoroy;
AnsiString * nazva;
perviy = Edit2->Text;
vtoroy = Edit3->Text;
nazva = Edit1->Text;
Table1->Active = false;
Table1->TableName = nazva;
if (! Table1->Exists)
{
* Table1->TableType = ttParadox;
* Table1->FieldDefs->Clear();
* TFieldDef *pNewDef = Table1->FieldDefs->AddFieldDef();
if (!perviy.IsEmpty())
{
* pNewDef->Name = perviy;
* pNewDef->DataType = ftString;
* pNewDef->Size = 20;
* pNewDef->Required = true;
}
* pNewDef = Table1->FieldDefs->AddFieldDef();
if (!vtoroy.IsEmpty())*
{
pNewDef->Name = vtoroy;
* pNewDef->DataType = ftBoolean;
}
* Table1->CreateTable();
* Table1->Active = true;
* Table1->Append();
if (Table1->FieldList->Fields[0]->FieldName == perviy)
* Table1->FieldByName(perviy)->AsString = "Петренко";
if (Table1->FieldList->Fields[1]->FieldName == vtoroy)
* Table1->FieldByName(vtoroy)->AsBoolean = false;
* Table1->Post();
* ShowMessage(AnsiString("Таблица создана"

);
* }
* else
* {
* ShowMessage(AnsiString("Таблица уже создана"

);
* * * Table1->Active = false;
* Table1->Active = true;
* }
удачи!!!!