Einzelnen Beitrag anzeigen

Reedx

Registriert seit: 19. Feb 2020
26 Beiträge
 
Delphi 7 Enterprise
 
#1

Datenbank-Programmierung mit UPDATE (SQL)

  Alt 19. Feb 2020, 13:07
Datenbank: Access • Version: office 16 • Zugriff über: OLEB Provider Microsoft Jet
Hallo
bin neu hier, deswegen entschuldige ich mich im Vorfeld, falls ich hier etwas schreibe, was schon tausend mal nachgefragt wurde. Zudem entschuldige ich mich, falls ich hier etwas falsch einstelle ..

Ich muss derzeit für die Schule ein Projekt erarbeiten mit Delphi 7 Enterprise und habe mich für ein Quiz entschieden. Nun möchte ich, dass der Admin bereits bestehende Fragen (aus meiner Datenbank) ändern kann. Die Fragen lasse ich in einer DBGrid darstellen, bestehend aus folgenden Spalten: ID Fach Schwierigkeit Frage L1 L2 L3 Lösung
Ich hab es folgend programmiert. Fehlermeldung kommt keine mehr! Allerdings wird die Änderung nicht ausgeführt und nicht in meiner Datenbank geändert. Die Art und Weise wie ich programmiere, hab ich so in der Schule gelernt. Zudem muss ich noch sagen, dass mir programmieren einfach nicht liegt und ich es auch nicht sonderlich mag. Bin aber trotzdem sehr stolz auf das bisher erreichte.

Im Anhang hab ich noch ein Bild vom Formular eingefügt, zum besseren Vorstellen. Die erste Zeile hab ich provisorisch so eingegeben, um zu testen.

Delphi-Quellcode:
procedure TFormbearb.ButtonbearbClick(Sender: TObject);
var antw:integer; query:ANSIstring;
begin

if (EditID.Text='') and (EditFach.Text='') and (EditSchw.Text='') and (Editfr.Text='') and (Editl1.Text='') and (Editl2.Text='') and (Editl3.Text='') and (Editlr.Text='') then
     begin
     application.MessageBox('Bitte alle Felder ausfüllen','Fehler');
     end else
      begin
        antw:= MessageDlg('Frage wirklich bearbeiten? ',mtConfirmation,[mbyes,mbNo],0);
                                          //Message mit Fragezeichen, Möglk. Ja/Nein
        Datamodule1.ADOQuery4.SQL.Clear;
      if antw = mrYes then //mrYes - Benutzer auf yes
       begin //Frage bearbeiten
        query:= 'UPDATE Fragen SET Fach=' +quotedstr(Editfr.Text)+ ', Schwierigkeit='+quotedstr(Editschw.Text)+', Frage='+quotedstr(Editfr.Text)+', L1='+quotedstr(Editl1.Text)+', L2='+quotedstr(Editl2.Text)+', L3='+quotedstr(Editl3.Text)+', Lösung='+quotedstr(Editlr.Text)+' '+
                'WHERE ID= :ID';
        Datamodule1.ADOQuery4.SQL.Add(query);
        Datamodule1.ADOQuery4.ExecSQL;
        application.MessageBox('Frage wurde überarbeitet!','Meldung');
   end else
   begin
     application.MessageBox('Frage wird nicht überarbeitet!','Meldung');
   end;
   end;



end;
Miniaturansicht angehängter Grafiken
formular.jpg  
  Mit Zitat antworten Zitat