Hi, ich hab bemerkt, dass ich das aber nicht einfach so erweitern kann.
Ich habe zuerst 4 Felder in die Datenbank eingefügt. Das hat prima geklapt.
Nun aber habe ich den Code um 1 Feld erweitert. Das klapt aber nicht.
Code:
procedure TKundendaten.Button3Click(Sender: TObject);
const
FeldName : array[1..5] of String = ('Rueckzahlung', 'Kreditwaehrung', 'Zinssatz1', 'Zinssatzgebunden', 'Aufschlag');
InsertStr : array[1..5] of String =
('ALTER TABLE Finanzierung ADD Rueckzahlung CHAR(30)',
'ALTER TABLE Finanzierung ADD Kreditwaehrung CHAR(10)',
'ALTER TABLE Finanzierung ADD Zinssatz1 CHAR(10)',
'ALTER TABLE Finanzierung ADD Zinssatzgebunden CHAR(10)',
'ALTER TABLE Finanzierung ADD Aufschlag FLOAT');
var i : Integer;
begin
for i := 1 to 5 do
begin
if DM.ADOSFinanzierung.FindField(FeldName[i])=NIL then
begin
DM.QueryFinanzierung.Close;
DM.QueryFinanzierung.SQL.Clear;
DM.QueryFinanzierung.SQL.Add(InsertStr[i]);
DM.QueryFinanzierung.ExecSQL
end;
end;
end;
Wenn ich im Programm nun den Button anklicke, kommt folgende Fehlermeldung:
Feld 'Rueckzahlung' ist bereits in der Tabelle 'Finanzierung' vorhanden.
Kann man das umgehen, so dass wenn man den Button drückt diese Meldung nicht mehr kommt?
Es kann ja sein, dass einige User einigemale auf den Button klicken.
Da soll einfach nichts geschehen, wenn schon die Felder in der
DB stehen.
Und wenn welche dazukommen, dann sollen die einfach dazukommen. Die anderen sollen dabei nicht angegriffen werden.