AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi speicherung in der datenbank funktioniert immer noch nicht..
Thema durchsuchen
Ansicht
Themen-Optionen

speicherung in der datenbank funktioniert immer noch nicht..

Ein Thema von Sulustaner2004 · begonnen am 18. Feb 2004 · letzter Beitrag vom 19. Feb 2004
Antwort Antwort
Seite 1 von 2  1 2      
Sulustaner2004

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

speicherung in der datenbank funktioniert immer noch nicht..

  Alt 18. Feb 2004, 10:48
Wer kann mir helfen und mir sagen warum das programm die anweisung nicht in die datenbank schreibt...
er soll aus einem textfeld mit dem namen tb_versuch_id eine nummer in das entsprechende feld der tabelle in der datenbank schreiben....
das feld in der tabelle heißt versuchs_id

hier ist der auszug aus meinem quellcode

Delphi-Quellcode:
procedure Tversuch.CB_TakeClick(Sender: TObject);
var versflid :string;
begin
 versflid:=adoquery1.fieldbyname('versuchs_id').AsString;
  begin
  if adoquery1.Locate('versuchs_id',tb_versuch_id.Text,[]) then

    begin
     with adoquery1 do
     begin
     sql.Clear;
     close;
     sql.Add('SELECT dbo_Versuchsflaechen_ST.Versuchsfl_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;
     end;

  while not adoquery1.Eof do
    begin
     adoquery1.Edit;
     adoquery1.FieldByName('versuchs_id').asstring;
     adoquery1.Post;
     adoquery1.Next;
     end;
    end;
   end;
  end;
end.
bin langsam aber sicher am verzweifeln...
Und das leben geht weiter.....
  Mit Zitat antworten Zitat
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.920 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: benötige hilfe...

  Alt 18. Feb 2004, 10:53
Hallo
Bitte ändere den Titel Deines Beitrages, da sich unter "Benötige Hilfe" keiner etwas Rechtes vorstellen kann.
Daniel R. Wolf
mit Grüßen aus Hamburg
  Mit Zitat antworten Zitat
Benutzerbild von APP
APP

Registriert seit: 24. Feb 2003
Ort: Graz (A)
705 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: benötige hilfe...

  Alt 18. Feb 2004, 10:54
Hallo,

falls Dein Query eine lebende (=editierbare) Datenmenge zurückliefert, würde ich darauf Tippen, dass die Zuweisung fehlt.
Code:
     adoquery1.Edit;
     adoquery1.FieldByName('versuchs_id').asstring[color=red] := 'Ich bin ein neuer Text für dieses Feld'[/color];
     adoquery1.Post;
     adoquery1.Next;
Armin P. Pressler

BEGIN
...real programmers are using C/C++ - smart developers Delphi;
END;
  Mit Zitat antworten Zitat
Sulustaner2004

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

Re: speicherung in der datenbank funktioniert nicht...

  Alt 18. Feb 2004, 11:03
er soll diesen wert den ich in die box schreibe in das entsprechende feld in der datenbank schreiben...
z.b.
die spalte in der tabelle heißt versuch_id...in ihr sind nur nummern gespeichert...
wenn ich diese nummer nun ändern will und sie mit hilfe dieser textbox eintragen will sieht es erstmal so aus als wenn alles geklappt hat.
nur wenn ich dann nachsehe dann hat sich nichts geändert !!!
Und das leben geht weiter.....
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#5

Re: speicherung in der datenbank funktioniert nicht...

  Alt 18. Feb 2004, 11:05
Ich sehe keine einzige Zuweisung in deinem Code...
Die hätte dann wohl...
Delphi-Quellcode:
  While Not adoquery1.Eof Do
  Begin
    adoquery1.Edit;
    // ... hier stehen sollen
    adoquery1.FieldByName('versuchs_id').asString {=>>} := IrgendWas {<<=};
    adoquery1.Post;
    adoquery1.Next;
  End;
p.s.: Dieses "Edit","Post",... -Zeugs macht in meinen Augen nur Sinn um auf Usereingaben zu reagieren.

Wenn du nur Code hast, sollte dort nicht Zeilenweise durch ein DataSet gesprungen werden.
Ein simples ...
Delphi-Quellcode:
  With Query Do
  Begin
    Active := False;
    SQL.Text :=
      'UPDATE dbo_Versuchsflaechen_ST t' + #10 +
      ' SET t.Versuchs_ID = :i_NewID' + #10 +
      'WHERE t.Versuchsfl_Bezeichnung = :i_VersFlID';
    prepared := True;
    Parameters.ParamByName('i_NewID').Value := IrgendWas;
    Parameters.ParamByName('i_VersFlID').Value := VersFlID;
    ExecSQL;
  End;
... reicht doch vollkommen aus.
Und wenn du jetzt noch ein Commit auf deine Session/Connection anwendest sind die Änderungen auch in der DB.
  Mit Zitat antworten Zitat
Sulustaner2004

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

Re: speicherung in der datenbank funktioniert nicht...

  Alt 18. Feb 2004, 11:22
Also um ehrlich zu sein, das Programm soll ja auch auf Usereingaben reagieren...
Es soll erst alle Eingaben abwarten und dann mit einem klick auf den Button cb_take alles in die Datenbank schreiben...
Und das leben geht weiter.....
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#7

Re: speicherung in der datenbank funktioniert nicht...

  Alt 18. Feb 2004, 11:30
Edit,Post,... sind von Vorteil bei Verwendung eines DBNavigators oder einem Grid.
Bei dir soll doch einmalig, durch Knopfdruck, eine Aktualisierung durchgeführt werden.
Wenn ein SQL-Statement den Job erledigen kann, ist es immer DBKompo-Basteleien vorzuziehen.
Jeder deiner Post-Aufrufe ist ein UPDATE!
  Mit Zitat antworten Zitat
Sulustaner2004

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

Re: speicherung in der datenbank funktioniert nicht...

  Alt 18. Feb 2004, 11:36
Achso...
da soll mal einer sagen ich kann nichts mehr lernen !!
Und das leben geht weiter.....
  Mit Zitat antworten Zitat
Sulustaner2004

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

Re: speicherung in der datenbank funktioniert nicht...

  Alt 19. Feb 2004, 08:39
Also irgendwie kann ich machen was ich will...diese verdammt speicherung in der datenbank klappt einfach nicht...
ich kann auf den button klicken und nichts tut sich...
jetzt habe ich schon den quellcode aus einen anderen programm von mir genommen wo er funktioniert hat und das resultat war gleich null
ich weiß nicht mehr was ich machen soll...
Delphi-Quellcode:
var versflid :string;
begin
versflid:=adoquery1.fieldbyname('versuchs_id').AsString;
  if (tb_versuch_id.Text ='') then
      showmessage ('Bitte was eintragen.');

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

      adoquery1.FieldByName('Versuchs_ID').AsInteger;

    with adoquery1 do
     begin
     close;
     sql.Clear;
     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;
     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;
  end;
es hat leider auch nicht mit euren vorschlägen weiter oben in der anfrage geklappt...
ich bin echt am verzweifeln...
Und das leben geht weiter.....
  Mit Zitat antworten Zitat
Benutzerbild von r_kerber
r_kerber

Registriert seit: 11. Feb 2003
Ort: Trittau
3.538 Beiträge
 
Delphi XE Professional
 
#10

Re: speicherung in der datenbank funktioniert immer noch nic

  Alt 19. Feb 2004, 08:57
Versuche es doch mal mit mit einem UPDATE-Statement (ungetestet!):
Delphi-Quellcode:
var versflid :string;
begin
versflid:=adoquery1.fieldbyname('versuchs_id').AsString;
  if (tb_versuch_id.Text ='') then
      showmessage ('Bitte was eintragen.');

    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(versflid));
     ExecSQL;
     end;

  end;
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:30 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz