当然删不掉了,
Table1.Fields.Remove(Table1.Fields[2]);//这fields代表显示给用户看的字段,并非表的字段
Table1.Refresh ;
Table2.Close;
Table2.DatabaseName := 'd:\test';
Table2.TableType := ttParadox;
Table2.TableName := 'copy'; Table2.FieldDefs :=Table1.FieldDefs ; //应该重新定义fielddefs
Table2.CreateTable ;
Table2.Open;
这样就ok了
Table1.Fields.Remove(Table1.Fields[2]);//这fields代表显示给用户看的字段,并非表的字段
Table1.Refresh ;
Table2.Close;
Table2.DatabaseName := 'd:\test';
Table2.TableType := ttParadox;
Table2.TableName := 'copy'; Table2.FieldDefs :=Table1.FieldDefs ; //应该重新定义fielddefs
Table2.CreateTable ;
Table2.Open;
这样就ok了
试一下Table2.FieldDefs.assign(Table1.FieldDefs)
我没试过
使用Assign与Table2.FieldDefs:=Table1.FieldDefs效果一样
然后可用SQL语句插入,如:insert into table2 field1,field2,... select field1,field2,... from table1
呵呵