Einzelnen Beitrag anzeigen

marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#7

Re: Datenbankeintrag über Editfelder

  Alt 4. Aug 2005, 12:49
Hi Scuby,

in Feldnamen (Straße) solltest du besser keine Sonderzeichen verwenden. Außerdem solltest du deinen Komponenten und der Form einen aussagefähigen Namen geben. Dann solltest du deinen Code besser organisieren, damit er leichter zu lesen ist. Was ist der Primärschlüssel deiner Tabelle? Wenn du die Tabellen-Struktur für ein Insert benötigst, warum holst du dann alle Datensätze aus der Tabelle? Wenn du im Feld Kurs etwas eingeben willst, warum fehlt dann dieses Feld in deiner Abfrage? Bist du sicher, dass deine Prüfbedingung und die Meldung in Ordnung sind?

Beachte bitte meine Änderungen am Quellcode:

Delphi-Quellcode:
function TTeilnehmerDialog.EingabeOK: boolean;
begin
  Result := not (
    (NameEdit.Text = '') or ... or (VornameEdit.Text = '')
  );
end;

procedure TTeilnehmerDialog.SaveButtonClick(Sender: TObject);
const
  SQL_SELECT
    = 'SELECT name, vorname, gebdat, strasse, hausnr, plz, ort, tel, fahrschule, kurs '
    + 'FROM teilnehmer WHERE 1 = 0';
begin
  if not EingabeOK then begin
    ShowMessage('Bitte füllen Sie alle Felder mit einem " * " aus!');
    Exit;
  end;

  with Query1 do begin
    Sql.Text := SQL_SELECT;
    Open;
    Insert;
    FieldByName('Name').AsString := NameEdit.Text;
    ...
    FieldByName('Vorname').AsString := VornameEdit.text;
    Post;
  end;
end;
Grüße vom marabu
  Mit Zitat antworten Zitat