Главная страница | назад





Article #16905: creating indexes with the TTable create function

 Question and Answer Database

FAQ1905C.txt   creating indexes with the TTable create function
Category   :Database Issues
Platform    :All
Product    :C++Builder  1.x

Question:
Why is it that when I create a table using the TTable component's
CreateTable method it creates the fields correctly but does not 
create the indexes even though I do a
   NewTable->IndexDefs->Assign(Table1->IndexDefs)?

Answer:
This is the correct way to transfer the index definition to 
NewTable, however, the IndexDefs property of Table1 may not be 
up-to-date so you need to call the Update method of Table1's 
IndexDefs property prior to its assignment to NewTable as shown in 
this example:


   NewTable->Active = false;
   NewTable->DatabaseName = "DBDEMOS";
   NewTable->TableName = "Temp";
   NewTable->TableType = ttParadox;
   NewTable->FieldDefs->Assign(Table1->FieldDefs);
   NewTable->Table1->IndexDefs->Update();    // Do an update first
   NewTable->IndexDefs->Assign(Table1->IndexDefs);
   NewTable->CreateTable();

7/2/98 10:32:32 AM
 

Last Modified: 01-SEP-99