Autor Beitrag
Lake
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 78


D6 prof., Delphi 10.2 Tokyo
BeitragVerfasst: Sa 27.03.10 08:34 
Ich will eine Paradox Tabelle kopieren. Diese hat einen Primary Index. Mit nachfolgendem Code funktioniert das Kopieren, aber es wird nur die Tabelle erzeugt und nicht der Index.

Warum wird der Primary Index nicht mit kopiert?

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
with tblNeu do
begin
  close;
  TableName := sNeuTblName;
  FieldDefs.Assign(tblAlt.FieldDefs);
  IndexDefs.Assign(tblAlt.IndexDefs);
  createTable;
end;

_________________
Gruss Lake
RonLipp
Hält's aus hier
Beiträge: 13

WinXP
D5 Prof
BeitragVerfasst: Mo 12.04.10 15:23 
Das sieht so aus, als ob nur die Struktur der Tabelle kopiert werden soll.
Leider ist der Primärindex in IndexDefs nur sichbar und kopierbar, wenn ein Sekundärindex enthalten ist.
Ein ganz anderer Lösungsansatz geht mit DbiCopyTable: Hier wird die gesamte Tabelle kopiert und anschließend geleert. Dabei wird auch der Primärindex kopiert.

_________________
Danke für Ihre Aufmerksamkeit!
Lake Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 78


D6 prof., Delphi 10.2 Tokyo
BeitragVerfasst: Di 13.04.10 17:18 
Vielen Dank, funktioniert einwandfrei. Der Primary Index wird hier mit kopiert.

Das bringt in diesem Fall aber nichts, da der Tabellen Level gleich bleibt. Die Tabellen müssen neu angelegt und danach gefüllt werden, um einen höheren Level zu erhalten. (waren alles Tabellen mit Level 4).

Trotzdem vielen Dank, wenn es nicht so viel gewesen wäre hätte ich es per Hand erledigt. In der Zwischenzeit habe ich es mit etwas mehr Aufwand anders gelöst.

_________________
Gruss Lake