Autor Beitrag
The Re@l
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Di 01.04.03 11:35 
Hallo
Ich habe folgendes Problem
Ich habe 2 gleiche Paradox DBs mit verschiedenen Einträgen
Die ich jetzt in der Table1 zusammen fügen möchte doch als
antwort bekomm ich immer wieder INDEXFEHLER :cry:
Was is denn daran Falsch

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
procedure TForm1.Button4Click(Sender: TObject); 
var 
i: Integer; 
begin 
If OpenDialog1.Execute then Begin 
Table2.Active := false; 
Table2.TableName := OpenDialog1.FileName ; 
Table2.Active := True; 
for i := 0 to Table2.FieldCount - 1 do begin 
Table1.Append; 
Table1.Fields.Fields[i].AsString := Table2.Fields.Fields[i].AsString; 
Table1.Post; 
  end; 
  end; 
  end;
LCS
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1305
Erhaltene Danke: 1

WIN 7, WIN 8
Delphi XE5, Delphi XE, Delphi 2007
BeitragVerfasst: Di 01.04.03 11:43 
Hi
das bedeutet, dass du versuchst aus der Tabelle 1 Sätze mit einem Primärschlüssel einzufügen, der in Tabelle 2 bereits existiert. Das lässt sich leicht prüfen, indem du die Tabelle 2 mal komplett leerst. Wenn dann alles klappt liegts genau daran.
Das ist leider immer ein Problem wenn's drum geht zwei Tabellen zusammenzuführen.

Gruss Lothar

_________________
Der BH ist für die Brust, der Plan ist für'n Ar...
The Re@l Threadstarter
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Di 01.04.03 11:47 
Misst

Du hast recht es wird nur ein eintrag Hinzugefügt bei einer leeren DB und auch nur das Feld mit dem PrimärKey. Kennt jemand ne andere lösung.

Vielen Dank im Voraus
LCS
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1305
Erhaltene Danke: 1

WIN 7, WIN 8
Delphi XE5, Delphi XE, Delphi 2007
BeitragVerfasst: Di 01.04.03 11:54 
Hmm,
leider net so einfach. Wenn der Primärschlüssel numerisch ist und sonst keine Rolle spielt kannst du einfach vor dem Einfügen den letzten verwendeten Schlüssel in Tabelle 2 bestimmen und beim Einfügen von dieser Nummer an den Schlüssel neu vergeben.
Die zweite Möglichkeit wäre vor dem Einfügen zu prüfen ob der Schlüssel schon vorhanden ist und wenn ja, entweder den Satz mit einem neuen Schlüssel zu schreiben oder zur Bearbeitung in der Ursprungstabelle zu lassen. Leider erhöht sich damit der Zeitbedarf ganz erheblich.

Gruss Lothar

_________________
Der BH ist für die Brust, der Plan ist für'n Ar...