Einzelnen Beitrag anzeigen

Sulustaner2004

Registriert seit: 14. Jan 2004
106 Beiträge
 
Delphi 7 Professional
 
#1

fehlermeldung in der query...

  Alt 20. Feb 2004, 09:22
Guten Morgen,
und da bin ich wieder mit meiner obligatorischen morgenfrage...

Ich bin dabei mehrere Textboxen über eine Query anzusprechen und dank Button in eine Datenbank zu schreiben...soweit so gut...
nun bekomme ich allerdings schon bei der 2. Textbox die Fehlermeldung Adoquery1: Operation bei geschlossener Datenmenge nicht ausführbar
nun meine frage an euch...woran könnte das liegen ???

Delphi-Quellcode:
//----------erste Textbox--------------\\

   if adoquery1.Locate('Versuchs_ID',tb_versuch_id.Text,[])then

      adoquery1.FieldByName('Versuchs_ID').AsString;

    with adoquery1 do
     begin
     close;
     sql.Clear;
     sql.Add('UPDATE dbo_Versuchsflaechen_ST');
     sql.Add('SET Versuchs_ID =' + QuotedStr (tb_versuch_id.Text));
     sql.Add('WHERE Versuchsfl_Bezeichnung =' + quotedstr(cbo_bezeichnung.Text));
     //sql.Add('SELECT dbo_Versuchsflaechen_ST.Versuchs_ID,');
     //sql.Add('dbo_Versuchsflaechen_ST.Versuchsfl_Bezeichnung, dbo_Versuchsflaechen_ST.Versuchs_ID');
     //sql.Add('FROM dbo_Versuchsflaechen_ST');
     //sql.Add('WHERE dbo_Versuchsflaechen_ST.Versuchsfl_Bezeichnung ='+ quotedstr(versflid));
     //open;
     ExecSQL;
     end;

   while not adoquery1.Eof do
    begin
     adoquery1.Edit;
     adoquery1.FieldByName('Versuchs_ID').Asstring:=tb_versuch_id.Text;
     adoquery1.Post;
     tb_versuch_id.Clear;
     adoquery1.Next;
    end;
 

  //----------------zweite Textbox--------------\\

   // Bei dieser if Anweisung springt er dann raus...
   if adoquery1.Locate('Behandlung',tb_behandlung.Text,[])then
       adoquery1.FieldByName('behandlung').AsString;



    with adoquery1 do
     begin
     close;
     sql.Clear;
     sql.Add('UPDATE dbo_Versuchsflaechen_ST');
     sql.Add('SET Behandlung =' + QuotedStr (tb_behandlung.Text));
     sql.Add('WHERE Versuchsfl_Bezeichnung =' + quotedstr(cbo_bezeichnung.Text));
     //open;
     ExecSQL;
     end;




   while not adoquery1.Eof do
    begin
     adoquery1.Edit;
     adoquery1.FieldByName('Behandlung').Asstring:=tb_behandlung.Text;
     adoquery1.Post;
     tb_behandlung.Clear;
     adoquery1.Next;
    end;
bei der ersten box klappt das tadellos nur ei der 2. nicht mehr...
Und das leben geht weiter.....
  Mit Zitat antworten Zitat