Hallo zusammen,
hab mal wieder eine Frage. Ich habe eine Form, in der ich diverse Daten konfiguriere. Diese Daten werden dann in einer Datenbank gespeichert.
Es gibt in dieser Datenbank zwar mehrere Spalten, aber immer nur mit einem Wert, da es nur Konfigurationseinstellungen sind.
Wenn ich diese Form aus meinem Programm Starte, lese ich beim Form Create die Daten Folgendermaßen ein...
Delphi-Quellcode:
procedure TMailSendenForm.FormCreate(Sender: TObject);
begin
ConPSConfig.Connect;
QryVorgabe.Close;
QryVorgabe.SQL.Text := 'SELECT E_MAIL_ANHANG, EIGENE_E_MAIL, EMPFAENGER_E_MAIL1,'+
'EMPFAENGER_E_MAIL2,SMTP_SERVER, BENUTZERNAME_E_MAIL,'+
'PASSWORT_E_MAIL FROM VORGABE';
QryVorgabe.Open;
FileEdit.Text := QryVorgabe.FieldByName('E_MAIL_ANHANG').AsString;
FromMailEdit.Text := QryVorgabe.FieldByName('EIGENE_E_MAIL').AsString;
AddMailEdit.Text := QryVorgabe.FieldByName('EMPFAENGER_E_MAIL1').AsString;
AddMailEdit2.Text := QryVorgabe.FieldByName('EMPFAENGER_E_MAIL2').AsString;
SMTPEdit.Text := QryVorgabe.FieldByName('SMTP_SERVER').AsString;
UserEdit.Text := QryVorgabe.FieldByName('BENUTZERNAME_E_MAIL').AsString;
PasswortEdit.Text := QryVorgabe.FieldByName('PASSWORT_E_MAIL').AsString;
QryVorgabe.Close;
ConPSConfig.Disconnect;
if CheckBox1.Checked then
begin
SMTPEdit.Enabled := true;
SMTPRadioGroup.Enabled := false;
end
else
begin
SMTPEdit.Enabled := false;
SMTPRadioGroup.Enabled := true;
end;
end;
Wenn ich jetzt auf dieser Form speicher(UPDATE), mach ich das so...
Delphi-Quellcode:
procedure TMailSendenForm.SpeichernButtonClick(Sender: TObject);
begin
ConPSConfig.Connect;
QryVorgabe.Close;
QryVorgabe.SQL.Text := '
UPDATE VORGABE SET E_MAIL_ANHANG = :ANHANG';
QryVorgabe.ParamByName('
ANHANG').AsString := FileEdit.Text;
QryVorgabe.ExecSQL;
ConPSConfig.Commit;
QryVorgabe.SQL.Text := '
UPDATE VORGABE SET EIGENE_E_MAIL = :SEMAIL';
QryVorgabe.ParamByName('
SEMAIL').AsString := FromMailEdit.Text;
QryVorgabe.ExecSQL;
ConPSConfig.Commit;
QryVorgabe.SQL.Text := '
UPDATE VORGABE SET EMPFAENGER_E_MAIL1 = :EEMAIL1';
QryVorgabe.ParamByName('
EEMAIL1').AsString := AddMailEdit.Text;
QryVorgabe.ExecSQL;
ConPSConfig.Commit;
QryVorgabe.SQL.Text := '
UPDATE VORGABE SET EMPFAENGER_E_MAIL2 = :EEMAIL2';
QryVorgabe.ParamByName('
EEMAIL2').AsString := AddMailEdit2.Text;
QryVorgabe.ExecSQL;
ConPSConfig.Commit;
QryVorgabe.SQL.Text := '
UPDATE VORGABE SET SMTP_SERVER = :SMTP';
QryVorgabe.ParamByName('
SMTP').AsString := SMTPEdit.Text;
QryVorgabe.ExecSQL;
ConPSConfig.Commit;
QryVorgabe.SQL.Text := '
UPDATE VORGABE SET BENUTZERNAME_E_MAIL = :BENUTZER';
QryVorgabe.ParamByName('
BENUTZER').AsString := UserEdit.Text;
QryVorgabe.ExecSQL;
ConPSConfig.Commit;
QryVorgabe.SQL.Text := '
UPDATE VORGABE SET PASSWORT_E_MAIL = :PASSWORT';
QryVorgabe.ParamByName('
PASSWORT').AsString := PasswortEdit.Text;
QryVorgabe.ExecSQL;
ConPSConfig.Commit;
QryVorgabe.ExecSQL;
ConPSConfig.Commit;
ShowMessage('
Daten wurden gespeichert');
end;
Im Grunde, funktioniert alles. Ich denke aber, das ich das mit dem UPDATE wahrscheinlich einfacher machen kann. Die Create müsste eigendlich so OK.
Für Eure Ansicht dazu würde ich mich interessieren. Also schon mal danke.
Gruß Jens