Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi SQL delete from... (https://www.delphipraxis.net/40505-sql-delete.html)

Gambit 16. Feb 2005 18:33

Datenbank: Foxpro • Version: 8 • Zugriff über: ADO

SQL delete from...
 
Hallo,

mal ne Verständnisfrage:

warum geht:
Delphi-Quellcode:
var searchStr: String;
begin
  searchStr:= ADOQueryTmp.fieldByName('VTKDNNR').AsString;
  ADOQueryTmp.SQL.Clear;
  ADOQueryTmp.SQL.Add('delete from DBTmp where VTKDNNR = '+searchStr);
  ADOQueryTmp.ExecSQL;
end;
aber nicht:
Delphi-Quellcode:
begin
  ADOQueryTmp.SQL.Clear;
  ADOQueryTmp.SQL.Add('delete from DBTmp where VTKDNNR = '+ADOQueryTmp.fieldByName('VTKDNNR').AsString);
  ADOQueryTmp.ExecSQL;
end;
Hier bekomm ich die Fehlermeldung "Feld VTKDNNR nicht gefunden"

Warum muss ich mein Ergebnis aus dem ResultSet erst noch auf eine Variable legen?

Gruß

Gambit

Zottel 16. Feb 2005 18:41

Re: SQL delete from...
 
in dem moment, wo du
Delphi-Quellcode:
ADOQueryTmp.SQL.Clear;
machst, löscht du auch das resultset.
wenn du also im zweiten beispiel das resultset erst löscht und dann versuchst darauf zuzugreifen, führt es zu nem fehler.

Im ersten fall machst du es richtig. Da sicherst du erst das resultset und löscht es dann ;-)

Gambit 16. Feb 2005 19:01

Re: SQL delete from...
 
Jau, logisch eigentlich...

THX

Gambit


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:52 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